
有効なtar gzipファイルP.tgzを抽出しようとしています。無限にぶら下がります。
tar -x P.tgz
ファイルサイズが非常に小さいです。しかしそれは決して終わらなかった。
存在しないtarアーカイブを試してみましたが、DoesntExist.tgz
エラーメッセージは報告されず、"archive doesn't exist"
無限に停止してシェルプロンプトに戻りません。
注:P.tgz
次のコマンドを使用して生成された有効なgzipファイル。
tar -cPf P.tgz /opt/seckie
答え1
tar
tar ファイルの名前を引数として使用しません。 tarファイルの名前をこのオプションの引数として渡すことができます-f
。書くことができます
tar -x -f P.tgz
または(tar
歴史的な理由で奇妙なオプション解析があります)
tar xf P.tgz
または(tar
tarファイル名が表示されない場合は、圧縮されたことを明示的に知らせる必要があります)
tar xz <P.tgz
GNU tarはデフォルトで標準入力からtarファイルを読み取ります(またはtarファイルを生成するコマンドの場合は標準出力に書き込みます)。他のほとんどの tar 実装は基本的にテープから読み取られます。これを実行すると、tar -x P.tgz
プログラムtar
は標準入力でアーカイブを待ちます。入力を提供していないので永遠に待ちます。引数は、P.tgz
アーカイブから抽出するファイルの名前です。
答え2
利用して修正しましたが、
tar xf P.tgz #added f to the options
すべてのアーカイブファイル名パラメータは、次のfオプションに従う必要があります。