Bashの奇妙なddコマンドの複合リスト

Bashの奇妙なddコマンドの複合リスト

次のbash構成を見つけました。これは複合リストと呼ばれ、3つのcatコマンドがサブシェル環境で実行されることがわかります。私が理解していないのは、パイプがそこに取り付けられる方法と、より一般的に動作する方法です。ステップバイステップの説明 本当にありがとうございました。

これはバイナリイメージ生成スクリプトの一部なので、すでに何をしているのかを知っていますが、どのようにそこに行くのかわかりません。

export DD="dd status=noxfer bs=1k iflag=fullblock"
(
    cat $DIR/file1 /dev/zero | $DD count=128
    cat $DIR/file2 /dev/zero | $DD count=128
    cat $DIR/file3 /dev/zero
) | $DD of=$OUT_FILE count=$SIZE

私を助けることができるbashの専門家がありますか?

ありがとう

ベストアンサー1

パディングを使用して3つのファイルをすべて1つにリンクしたいようです。最初の猫はファイルに/dev/zeroを追加して128KBで埋めます。 2番目と同じで、3番目も直接分類されます(また/ dev / zeroを使用して)。その後、パイプラインは3つの出力すべてを取得し、$ SIZEサイズのファイルに保存します。これにより、file1 が 128KB ブロックにあり、file2 が別の 128KB ブロックにあり、file3 が残りの部分をパディングで埋めるファイルが生成されます。

おすすめ記事