
この質問のいくつかのソースを見て、方法を知っています。タブレット文書がありますが、説明方法を教えてくれるソースはありません。フォルダを置く場所一度抽出されます。
私はこれを試しました:
tar -xvf tarball.tar.gz my/folder/im/extracting
これにより、内容がリストされているとおりに抽出されるように見えますが、エラーも発生します。
gzip: stdin: 予期しないファイルの終了 tar: アーカイブの予期しない EOF tar: エラー回復不可能: 即時終了
現在ディレクトリを確認しましたが、フォルダが表示されません。
これを行う方法、またはエラーが原因で現在のディレクトリに生成されませんか?
答え1
tar -xvf tarball.tar.gz my/folder/im/extracting
my/folder/im/extracting
これにより、その場所からアーカイブメンバーが抽出されますmy/folder/im/extracting
。アーカイブメンバーがディレクトリの場合は、そのコンテンツ(サブディレクトリを含む)を繰り返し抽出します。
GNUまたはFreeBSD tarを使用して別のディレクトリに解凍したい場合(これは組み込みのLinux、Cygwin、FreeBSD、およびOSXでも同様です)。
tar -xvf tarball.tar.gz --transform 's!my/folder/im/extracting!somewhere/else!' my/folder/im/extracting
my
別の(既存の)ディレクトリの下に配置するには、次のものを使用できます。
tar -xvf tarball.tar.gz -C different/directory my/folder/im/extracting
"gzip:stdin:予期しないファイルの終わり"エラーは、tarの使用方法とは何の関係もありません。 「予期しないファイルの終わり」は、gzipがファイルの終わりに達したことを意味しますが、ファイル形式はより多くのデータが必要であることを示します。つまり、ダウンロードが中断されるなどの理由でファイルが切り捨てられました。
答え2
-C
オプションを使用して、tar
ファイル抽出用の宛先ディレクトリを指定できます。ただし、ターゲットディレクトリを事前に作成しておく必要があります。tar
あなたのために作成されません。
したがって、コマンドは次のようにする必要があります。
mkdir -p my/folder/im/extracting
tar -xvf tarball.tar.gz -C my/folder/im/extracting