単一ファイルのアーカイブ解除が中断されました

単一ファイルのアーカイブ解除が中断されました

非常に大きなディレクトリのアーカイブをキャンセルしようとしています。コンテンツ全体を解凍する方法は次のとおりです。

$ sudo tar -xjf itunes20140618.tbz --verbose
x itunes20140618/
x itunes20140618/genre_artist
x itunes20140618/imix_type
...etc...

ただし、1つのファイルだけをアーカイブキャンセルしようとすると正しく実行されますが、コマンドは無期限に中断されます。また、--verbose ステートメントを使用しても出力は出力されません。例は次のとおりです。

$ sudo tar -xjf itunes20140618.tbz itunes20140618/imix --verbose
[ nothing prints...it just hangs. But it does un-tar that single file ]

ベストアンサー1

オプション以外の引数の後にオプションを指定しないでください。これはtar、オプション、タスク、および引数を解析するさまざまな古代および最新の方法をサポートするさまざまな実装がある非標準コマンドであるためです。

存在する:

tar -xjf itunes20140618.tbz itunes20140618/imix --verbose

itunes20140618.tbzアーカイブから抽出するメンバーの名前として使用される追加の非オプション引数とともに、オプションの引数になります-f。追加のパラメータ(抽出する他のメンバーの名前)またはオプションとして処理されるかどうかは、実装とitunes20140618/imixバージョン、さらにはコンパイル方法またはランタイム環境によって異なります。--verbosetar

あなたの場合、あなたはおそらくtarこれをグローバルなオプションとして見ない人(大多数)の1人です。--verbose

ここでは以下を使用してください。

tar -xjf itunes20140618.tbz --verbose itunes20140618/imix

または、より携帯性に優れています。

bunzip2 < itunes20140618.tbz | tar xvf - itunes20140618/imix

またはtar標準に交換してください(携帯性は低下しますが)pax

bunzip2 < itunes20140618.tbz | pax -vr itunes20140618/imix

おすすめ記事