bash / awkを使用してMBをBYTEに変換する方法

bash / awkを使用してMBをBYTEに変換する方法

MB値に基づいてBYTE値を計算する必要があります。

はい

10  --> 10485760 
100 --> 104857600

答え1

またはnumfmtGNU coreutilsを使用してください。

printf '10\n100\n' | numfmt --from-unit=Mi
10485760
104857600

答え2

1024を2回掛けます(または1048576を1回掛けます)。


bash(または任意の-シェル)からsh$(( 10 * 1024*1024 ))

変数の使用:

s=10
m=$(( s * 1024*1024 ))

表示される特定の出力を取得するには:

for s in 10 100; do
    printf '%-3d --> %d\n' "$s" "$(( s * 1024*1024 ))"
done

存在するawk10 * 1024*1024

標準入力(単一列入力)からメガバイトを読み取り、対応するバイト数を印刷します。

{ print $1 * 1024*1024 }

表示される特定の出力を取得するには:

printf '10\n100\n' | awk '{ printf("%-3d --> %d\n", $1, $1 * 1024*1024) }'

答え3

Echo "10|100|1000" | awk -F"|" '{ gsub("10","10 --> 10485760") gsub("100","100") gsub(" 1000","1000 --> 1048576000");印刷}'

関連情報