powershell-3.0 - 如何从文件夹及其子文件夹文件中获取哈希 .csv 列表?
问题描述
所以基本上我正在编写一个数据完整性脚本.. 来评估应用程序文件夹是否每天都被更改。只有在测试时,我才意识到它只读取顶级文件,而不是子文件夹或其中的任何内容。
这就是我写的:
$ACPath = "C:\Program Files (x86)\Tester\sFolder\*"
$BHashOutput = "C:\Scripts\File Integrity\Output\Bhashoutput$(Get-Date -f yyyy-MM-dd).csv"
#Is "C:\Program Files (x86)\Tester\sFolder\" -Recurse | foreach-object {Get-FileHash $_.FullName }
$hashBase = Get-FileHash $ACPath
$hashBase
$hashBase |Export-Csv $BHashOutput -NoTypeInformation
#$hashBasePM = "BHashOutput$((Get-Date).AddDays(-1).ToString('yyyy-MM-dd')).csv"
$hashBaseCurrent = Import-Csv "C:\Scripts\File Integrity\Output\BHashOutput$(Get-Date -f yyyy-MM-dd).csv"
$hashBase = Import-Csv "C:\Scripts\File Integrity\Base\BHashOutput$((Get-Date).AddDays(-1).ToString('yyyy-MM-dd')).csv"
foreach($A in $hashBase)
{
foreach ($B in $hashBaseCurrent)
{
If ($A.path -ieq $B.path)
{
If ($A.hash -ieq $B.hash)
{
$maintained += 'The file integrity maintained ' + $A.Path
}
else
{
$tampered += 'The file integrity TAMPERED ' + $A.Path
}
}
}
}
$maintained |Out-File -Fil "C:\Scripts\File Integrity\Output\maintained.txt"
$tampered |Out-File "C:\Scripts\File Integrity\Output\tampered.txt"
解决方案
推荐阅读
- spring-cloud-gateway - 服务到服务调用的 SpringCloud Gateway 请求处理
- javascript - 在模式定义中使用 Date.now 时,是否可以在 Mongoose 中使其更具可读性?
- python - 如何正确导出 Python 模块中的全局变量?
- python - 查找字符串中子字符串的最后一个索引
- javascript - 有没有像 scalePoint 这样的 d3 函数但是二维的?
- javascript - react setState() 在第一次点击时不起作用,但在第二、第三次点击时工作正常……点击
- python-3.x - 如何在多维列表中返回 2 个或更多重复项
- python - 使用 Python 将传感器数据添加到列表中
- android - 在 Google Play 控制台中为多个应用使用相同的上传证书
- javascript - 如何让我的 for 循环在打印之前运行?