我在PowerShell中這樣做:uUable使用命令「SFC/SCANNOW」的輸出在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'}
什麼是文件「SFC.txt」中是不可讀的記事本++。
更多,$test
總是等於$false
(事實並非如此)。
如何在我的文件中正確保存輸出以便能夠讀取它以及如何測試此輸出?
張貼這個問題之前,請確保TBAT,我已經試過參數編碼的所有選項。 -encoding ASCII不是訣竅。 我只能使用write-host命令正確讀取控制檯上的輸出。就這樣。 另外,我無法在這個愚蠢的命令「SFC/scannow」的輸出中找到任何字符串。 這很奇怪。當我通過另一個命令(例如:DIR)更改命令「SFC」時,該腳本就像一個魅力。 您可以驗證自己,但必須以管理員身份運行powershell ise。 SFC命令和所有其他命令之間有什麼不同? – x30204 2014-11-15 17:27:16