it-swarm-ja.com

.tar.bz2を直接抽出する方法は? (フォルダの作成を回避する)

私は常に、これらのファイルが必要なルートを使用して、この種のファイルを抽出します。

# tar -xvf file.tar.bz2 

ただし、常に「ファイル」(この例では)と呼ばれるfolderを作成し、その中にすべてを格納します。

これで問題が発生したことはありませんが、今度はそのフォルダーを避けて、ルート内のすべてのものを抽出する必要があります。

私はman tar(手動)を読んでいますが、それでもこれを行う特定の属性を見つけることができません。

どうやってやるの? (All in terminal

4
AAlvz

tarは、file;というフォルダーを作成しません。フォルダfileはtarballに保存されます。これは、tarballがコマンドで作成していたためです

tar cf foo.tar.bz2 foo

のではなく

cd foo
tar cf foo.tar.bz2 .

man tar によると、スイッチ--strip-components(古いバージョンでは--strip-path)を使用してこれをオーバーライドできます。

単一の先頭フォルダーを削除するには、次のコマンドを使用します。

tar xvf file.tar.bz2 --strip-components 1
4
Dennis