GNU/Linux >> Linux の 問題 >  >> Linux

ddを使用してFFでファイルをパディングする方法は?

私の知る限り、dd を伝える方法はありません 0xFF を使用してパディングする .しかし、回避策があります。

最初に 0xFF で満たされた必要な長さのファイルを作成します :

$ dd if=/dev/zero ibs=1k count=100 | tr "\000" "\377" >paddedFile.bin
100+0 records in
200+0 records out
102400 bytes (102 kB) copied, 0,0114595 s, 8,9 MB/s

tr ゼロを 0xFF に置き換えるために使用されます . tr 引数は 8 進数である必要があります。 0xFF 8 進数は \377 です .

結果:

$ hexdump -C paddedFile.bin 
00000000  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
*
00019000

次に、「パディングされた」ファイルの先頭に入力ファイルを挿入します:

$ dd if=inputFile.bin of=paddedFile.bin conv=notrunc
0+1 records in
0+1 records out
8 bytes (8 B) copied, 7,4311e-05 s, 108 kB/s

conv=notrunc に注意してください dd を伝える 出力ファイルを切り詰めないようにします。

入力ファイルの例:

$ hexdump -C inputFile.bin 
00000000  66 6f 6f 0a 62 61 72 0a                           |foo.bar.|
00000008

結果:

$ hexdump -C paddedFile.bin 
00000000  66 6f 6f 0a 62 61 72 0a  ff ff ff ff ff ff ff ff  |foo.bar.........|
00000010  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
*
00019000

Linux
  1. Linuxで特定のサイズのファイルを作成するには?

  2. LinuxでCでファイルを書く方法は?

  3. パイプを使用してvimでファイルを開く方法

  1. コマンドを使用してPPKをPEMファイルに変換する方法

  2. Btrfsでデータをコピーせずにファイルを複製するにはどうすればよいですか?

  3. awkを使用してファイルをインプレースで変更するには? (sed -i と同様)

  1. 男と.8ファイルを開く方法は?

  2. Linux で「split」コマンドを使用して iso またはファイルを分割する方法

  3. パイプでティーを使用しているときにstderrをファイルに書き込むにはどうすればよいですか?