1

次のコンテンツを含むoutput.txtファイルがあります。

Windows        6543765432
Linux          4534653463
MacOS          3564325
Ubuntu         8235646255

output.txt 内のすべての数値を検索し、それらを 1024 で除算するバッチ スクリプトを作成したいと考えています (小数点以下ではなく、結果に必要な整数部分のみ)。これにより、KB のメモリを MB に変更できます (バッチ演算の 2 GB の制限を克服します)。 )以下で試してみましたが、出力がありません..

@echo off
setlocal enabledelayedexpansion
(for /f "tokens=1,2 delims=" %%a in (output.txt) do (
set /a MB=!b!/1024
echo %%a !MB!
))
4

3 に答える 3

1

gawk は、単純なものから複雑なものまで、あらゆるテキスト処理に簡単に対応できます

gawk " {printf(\"%s %d\n\", $1 ,$2/1024)}" output.txt

Windows、Linuxを含むどのOSでも問題なく動作します。

C:\dos>gawk " {printf(\"%s %d\n\", $1 ,$2/1024)}" output.txt
Windows 6390395
Linux 4428372
MacOS 3480
Ubuntu 8042623
于 2013-10-24T05:19:28.787 に答える