tarコマンドの引数で標準出力を見つけるようにリダイレクトする

tarコマンドの引数で標準出力を見つけるようにリダイレクトする
$ find playground -name "file_a"  | tar cf - --files-from=- | gzip > playground.tgz

なぜ私たちが両方を-使用しているのか分からないcf ---files-from=-

-すべての標準出力がにリダイレクトされていませんかtar cf

ベストアンサー1

同じ-記号を使用すると混乱する可能性がありますが、場合によっては意味が異なります。

とともに使用すると、cf -作成するファイルの名前を指定するのではなく、次のことを意味します。tarはアーカイブを標準出力に書き込む必要があります。:

「-」がアーカイブ名として使用される場合、tarは標準入力からアーカイブを読み取る(ファイルをリストまたは抽出するとき)標準出力(アーカイブを作成するとき)。

時期と--files-from=-手段指定されたファイル名から抽出または生成する名前を取得します。、そして:

「--files-from」のファイル名でダッシュを指定すると(つまり、--files-from=- または -T - を指定すると)、ファイル名は次から読み込まれます。標準入力

(私は標準入力の読み取りを強調します)。

おすすめ記事