実際のところ
100バイトのファイルを生成する場合は以下のように。
bsがバイト数、countが繰り返しで、出力を指定するifが0x00を延々と出力する/dev/nullなので
期待した出力が得られます。
dd bs=100 count=1 if=/dev/zero of=file1
ためしにhexdumpで見ると、こんな感じ。
"*"飛ばしも機能してますね。
$ cat file1 | hexdump 0000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 * 0000060 00 00 00 00 0000064 $ cat file1 | hexdump -v 0000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000060 00 00 00 00 0000064
I2CのCLIツールみたいなログをddコマンドを併用して作る場合、以下のように。
$ seq -w 40 | dd cbs=10 conv=block 2> /dev/null | tr " " "-" | dd cbs=50 conv=unblock 2> /dev/null 01--------02--------03--------04--------05-------- 06--------07--------08--------09--------10-------- 11--------12--------13--------14--------15-------- 16--------17--------18--------19--------20-------- 21--------22--------23--------24--------25-------- 26--------27--------28--------29--------30-------- 31--------32--------33--------34--------35-------- 36--------37--------38--------39--------40--------