特定の範囲のデータを取得するddコマンド

特定の範囲のデータを取得するddコマンド

ddコマンドでは、skipファイル内のnバイトスキップを使用できます。 n番目のバイトからファイルの終わりまでコピーされます。しかし、1228から1331にバイナリデータをコピーしたいです。ddLinuxでこれを達成するには?

ベストアンサー1

countコピーするバイト数を指定するために使用されます。計算を実行するには、シェルを使用します。ibs=1入力ブロックサイズを1に設定するために使用されるため、およびskipすべてcountバイト単位で指定されます。

 dd ibs=1 skip=1228 count=$((1331-1228+1))

1228 と 1331-1228+1 は両方とも 4 の倍数なので、入力ブロックサイズを 4 に設定するとより効率的になりますが、何度も使用しない場合は最適化が失われます。騒音。結果を事前に計算するなどの他の操作を1331-1228+1最初に実行する必要があります。

 dd ibs=4 skip=$((1228/4)) count=$(((1331-1228+1)/4))

おすすめ記事