バッチスクリプトで "test.exe"という名前のすべてのプログラムの使用メモリを合計したいと思います。私はすべての適切なプロセスのメモリ使用量を取得するには、次のコマンドを使用することができますので、Windows + wmic + memory
C:\> wmic process where name="test.exe" get workingsetsize | findstr /v "WorkingSetSize"
55758848
66174976
、私はFORループと一緒にすべてのそれらの値を合計したいと思います。次のコマンドはi変数を表示するだけですが、それにもかかわらずエラーが表示されます。
C:\> for /F %i IN ('wmic process where name="test.exe" get workingsetsize ^| findstr /v "WorkingSetSize"') DO echo %i
test.exe - Invalid alias verb.
は、どのように私はすべての使用とともにメモリや出力、それを合計すると、そのコマンドを変更することができますし、それは私の命令に好ましくは非常によく似た、CMDに働かなければなりません。 =
はトークン区切り文字であり、それはバッチパーサによって取り除かなっているので、
おかげ
ありがとう、魅力のように動作します:) – eleanor
+1:一口!私は人々が実際にあなたが最後に与えるもののような良いアドバイスを取ることを望みます... –
WorkingSetSizeは常に1024バイト(= 1 KiB)の倍数です。 2 GiBでのオーバーフローを避けるために、KiBの合計を計算することができます: "set/a SUM + =%i/1024"。 PageFileUsage(すでにKiBにある)を合計すると、共有メモリページが何度もカウントされないため、より関連性が高いことにも注意してください。 – Antosha