.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ではそうではありません)。すでに解凍されているので、ファイルを見つけることができます)。しかし、これは単なる推測です。