tarアーカイブから特定のファイルを抽出するにはどうすればよいですか?


106

こんにちは、.tarバックアップから単一のファイルを復元できますか?トータルバックアップを復元したくありません。バックアップから1つのファイルを復元したいだけです。

回答:


128

1.コマンドラインtarを使用する

はい、tarball名の後にファイルの完全な保存パスを指定します。

例:etc/apt/sources.listからファイルを取得するとしますetc.tar

tar -xf etc.tar etc/apt/sources.list

現在のディレクトリの下にsources.listディレクトリを抽出して作成しますetc/apt

  • -t代わりにリストオプションを使用して-x、おそらくgrepとともに、必要なファイルのパスを見つけることができます
  • 単一のディレクトリを抽出することもできます
  • tarに--wildcards、より高度な部分抽出シナリオのためのなどの他のオプションがあります。見るman tar

2.アーカイブマネージャーで抽出する

Nautilusのアーカイブマネージャーでtarを開き、フォルダー階層に移動して必要なファイルを見つけ、抽出します。

  • サーバまたはコマンド・ライン・システム上で、このようなミッドナイトコマンダー(などのテキストベースのファイルマネージャを使用してmc同じことを達成するために)。

3. Nautilus / Archive-Mounterの使用

Nautilusでtarを右クリックし、「ArchiveMounterで開く」を選択します。

これで、tarは左側のリムーバブルドライブのように表示され、通常のドライブと同じように探索/移動し、必要なファイルを任意の宛先にドラッグ/コピー/貼り付けできます。


3
最初の初期ディレクトリをスキップする方法はありますか?特に名前がわからないときは?ワイルドカードディレクトリのようなもの。
CMCDragonkai 14年

これがtarファイル全体にロードされるかどうかを教えてもらえますか?なぜなら、ファイル(/etc/network/interfaces)に対してこれを行おうとしたときはうまくいきましたが、ツールは古くなっています。プログラムを停止しましたが、ファイルは解凍されました。
クリストフ・デ・トロイエ

1
私にとって重要なステップは使用することthe full stored path of the fileでした。動作し./filenameましたが、動作filenameしません。
ニロクト

4
@ChristopheDeTroyer Tarballは、完全に解凍してから必要なファイルを取り出す必要があるように圧縮されています。.zipフォルダーは異なると思うので、個々のファイルを高速に取り出したい場合は、試してみてください。
GKFX

Midnight Commanderでそれを行う方法について、さらに情報を追加できますか?
beppe9000
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.