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

ファイルからバイト範囲を取得する Linux コマンド

解決策 1:

Unix コマンドのデアデビル、dd

dd if=yourfile ibs=1 skip=200 count=100

これはバイト 200 から始まり、次の 100 バイト、つまりバイト 200 ~ 300 を示します。 ibs dd は、デフォルトの 512 バイトではなく、一度に 1 バイトのみを読み取りますが、それでもデフォルトの 512 バイトのチャンクで書き出すことを意味します。 ibsかどうか見てみましょう パフォーマンスに悪影響を与えません。

解決策 2:

あなたの興味がバイトにあるなら、od

-j, --skip-bytes=bytes
-N, --read-bytes=bytes

したがって、バイト 1024 から始まる 16 バイトを読み取り、ASCII で出力するには

od -j 1024 -N 16 -a /bin/sh

解決策 3:

dd if=logfile of=pieceoflogfile skip=startingblock count=#ofblocks を使用できます (おそらく bs=1 で それ以外の場合は 512 バイト ブロックを使用します)。ただし、一度に 1 バイトずつ書き込むように指示することがどれほど効率的かはわかりません。


Linux
  1. Linuxコマンドラインでファイルから特定の行を削除する

  2. Linuxwcコマンド

  3. Linuxgrepコマンド

  1. LinuxコマンドラインからのGoogleドライブの使用

  2. Linux での ln コマンドの例

  3. Linux での file コマンドの例

  1. Linuxでの8つのヘッドコマンドの例

  2. Linuxでの8つのStatコマンドの例

  3. Linuxでコマンドラインからビデオファイル情報を取得する方法は?