【发布时间】:2015-01-12 02:25:42
【问题描述】:
我在 powershell 中做了什么:
$SFC = SFC /scannow
write-output $SFC | out-file d:\cours\powershell\SFC.txt
$string = 'd i d n o t f i n d a n y i n t e g r i t y v i o l a t i o n s'
$test = $false
$SFC | foreach {If ($_.name -match $string) {$test = $true}}
if ($test -eq $false) {write-host 'Ok'}
notepad++ 无法读取文件“SFC.txt”中的内容。
更多,$test 总是等于 $false(这不是真的)。
如何将输出正确保存在我的文件中以便能够读取它以及如何测试此输出?
【问题讨论】:
-
发这个issue之前一定要tbat,参数编码的所有选项我都试过了。 -encoding ASCII 不是诀窍。我只能使用 write-host 命令正确读取控制台上的输出。就这样。此外,我在这个愚蠢的命令“SFC /scannow”的输出中找不到任何字符串。这很奇怪。当我用其他命令(例如:DIR)更改命令“SFC”时,脚本就像一个魅力。您可以验证自己,但必须以管理员身份运行 powershell ise。 SFC 命令与所有其他命令有什么区别?
标签: string powershell converter