我正在编写powershell脚本,它将文件存档到.zip中。我还添加了Transcript,它记录了7-zip日志中的所有内容。问题,是否可以修改7-zip控制台日志? 示例:
7-Zip 18.05(x64):版权所有(c)1999-2018 Igor Pavlov:2018-04-30
扫描驱动器:2个文件夹,4个文件,635322个字节(621 KiB)
创建存档:D:\ folder \ folder \ file.zip
添加新数据到存档:2个文件夹,4个文件,635322个字节(621 KiB)
- 文件夹\ file.docx
- 文件夹\ file.DOCX
- 文件夹\ file.docx
- 文件夹\ file.DOCX
这是7-zip行负责创建zip,这里我得到所有控制台日志:
[array]$arguments = @("a", "-stl", "-y", "-bb1", "-bd", "-sdel", "-scsWin","-p$pass", $tempDestination, "$($tempProjectDir)\*" )
& $Zip $arguments | Out-String
是否可以编辑控制台输出,fox示例删除此输出:
7-Zip 18.05(x64):版权所有(c)1999-2018 Igor Pavlov:2018-04-30
或者
扫描硬盘: 2个文件夹,4个文件,635322个字节(621 KiB)
有了这个,我希望获得更好的日志文件,并在日志文件中只有重要信息。
答案 0 :(得分:0)
您可以将输出传递给Where-Object
并使用正则表达式来过滤您不想要的内容。像这样:
[array]$arguments = @("a", "-stl", "-y", "-bb1", "-bd", "-sdel", "-scsWin","-p$pass", $tempDestination, "$($tempProjectDir)\*" )
& $Zip $arguments |
Out-String |
Where-Object { $_ -notmatch 'Igor\ Pavlov|Scanning\ the\ drive:'}