特定の範囲のストリームにファイルをパイプする方法は?

特定の範囲のストリームにファイルをパイプする方法は?

解決策として私の他の質問のいくつかストリームをファイルにパイプする必要がありますが、ファイルの特定の部分だけをパイプする必要があります。

簡単に言えば、私が達成すべきことは次のとおりです。

元の請求書:

mysource > mysource.img
# mysource.img is 500GB 

私の意図:

mysource | stream-take 0 100GB > mysource-0.img
# mysource-0.img is 100GB 
# 
# some times later, after processing above out file
rm mysource-0.img
mysource | stream-take 100GB 200GB > mysource-1.img
# mysource-1.img is 100GB 
...

次に、リモートの場所から次のファイルをリンクします。

cat mysource-* > mysource.img

答え1

次のコマンドを試してくださいdd

mysource | dd bs=1M count=100K skip=0K iflag=fullblock of=mysource-0.img
# some times later, after processing above out file
rm mysource-0.img
mysource | dd bs=1M count=100K skip=100K iflag=fullblock of=mysource-1.img

答え2

使用splitコマンド:

mysource | split --bytes 100G

また見なさい:大きなファイルを小さな部分に分割する方法は?

関連情報