アーカイブでディレクトリを探す

アーカイブでディレクトリを探す

.tgzアーカイブがあり、.tgzで検索する方法を学ぶために、その中のディレクトリを見つけようとしています。以下の方法を試しましたが、成功しませんでした。

tar -tzf archive-9.tgz | grep '161519' | xargs tar -Oxzf archive-9.tgz | grep -B 3

ベストアンサー1

一度にやる方が簡単ではないでしょうか?

tar -xzvf <tar-file-name>.tgz --wildcards "*/<directory-name>/*"

xargsで動作しないような理由は、grepが最初にディレクトリを見つけてから(それを渡してtarを渡し、すべてを抽出してから)、grepがコンテンツに移動するためだと思います(これを渡してtarではそうではありません)。すでに解凍されているので、ファイルを見つけることができます)。しかし、これは単なる推測です。

おすすめ記事