Batch

批處理文件檢查cpu並輸出到txt

  • June 12, 2017

我正在嘗試編寫一個簡單的批處理文件來每 30 秒檢查一次電腦的 cpu 並以目前時間輸出到 txt 文件。我希望每一行都像:

Line1: %time% %cpu%
Line2: %time% %cpu%

到目前為止,這是我想出的,沒有用:

:loop

echo %TIME% > C:\test.txt

wmic cpu get loadpercentage > C:\test.txt

timeout 30

goto loop

您的範例的一個大問題是重定向運算符“>” - 這將始終用輸入的新數據覆蓋 test.txt 中的數據。使用“>>”將輸出附加到文件末尾,而不刪除文件中已有的資訊。

這個 PowerShell 單行程序無需修復批處理腳本,而是以更少的工作量為您提供相同的結果。

While($true){Get-WmiObject win32_processor | Select-Object @{L="Date";E={Get-Date}},LoadPercentage,SystemName | Export-Csv -NoTypeInformation -Append CPU.csv; Start-Sleep -Seconds 5}

您甚至可以使用以下命令定位遠端電腦:

Get-WmiObject -ComputerName<電腦>

很抱歉沒有回答您的具體問題。我希望您會發現我提供的內容很有用。

引用自:https://serverfault.com/questions/855240