我编写了一个脚本来检查服务状态,测试两个路径并测试注册表值。目前我在power shell控制台上获得输出(可能是因为我正在使用write-output命令)。 有没有办法将单页输出写入文件? 我正在努力寻找一种方法将整个输出文件输出到文件中。
以下是剧本。
$testpath = Test-Path "C:\test"
$testpath2 = test-path "C:\test"
$mcshieldk = Get-Service -Name mcshield | select Name
$internet = (Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\internet explorer").MkEnabled $hostname = hostname Write-Host "hostname of comuter is" $hostname if (Test-Path $Machinetype)
{}
else { Write-Host "internet is" $internet }
if ($testpath -eq $true -and $testpath2 -eq $true)
{ Write-Host "test and test1 folder exists" -ForegroundColor Green }
else{ Write-Host "folder does not exists" -ForegroundColor Red } if($mcshield.Name -eq "mcshield") { Write-Host "mcshield service exists" }
else { Write-Host "mcshield does not exists" }
以下是控制台输出
hostname of comuter is Server1
internet is Yes
test and test1 folder exists
mcshield does not exists
答案 0 :(得分:1)
将您的Write-Host
cmdlet换出,或使用以下内容添加另一行:
"Your output text $YourVariable" | Out-File -FilePath "C:\Log.txt" -Append -Encoding utf8
这将在日志文件C:\Log.txt
的末尾追加一个字符串。 注意,缺少-Append
参数会导致文件被覆盖。
您也可以使用以下内容给出相同的效果:
"Your output text $YourVariable" >> "C:\Log.txt"
但请注意不要混合使用这两种方法,因为您可能会在文本文件中遇到编码错误。如果您希望使用第二种方法覆盖文件,请使用>
而不是>>
。