バイナリファイルに特定の数のゼロを自動的に書き込むには?
私は書く:
#!/bin/bash
for i in {0..127};
do
echo -e -n "\x00" >> file.bin
done
ただし、Bless 出力ビュー ファイルを使用する2D 65 20 2D 6E 20 5C 78 30 30 0A
場合-e -n \x00
。
ベストアンサー1
printf
携帯性が必要ですそして8進数の文字エスケープをサポートします。
i=0
while [ "$i" -le 127 ]; do
printf '\000'
i=$((i+1))
done >> file.bin
(printf
そのように16進エスケープをサポートする必要はありませんが、\x00
多くのシェルではサポートされています。)
バラよりなぜprintfがechoより優れているのですか?問題が発生しましたecho
。