web-dev-qa-db-ja.com

tar:開けません:そのようなファイルまたはディレクトリはありません

こちら に従ってJettyをUbuntuにインストールしようとしていますが、tarを使用しようとすると問題が発生します。

cd /usr/local/src
Sudo wget http://Eclipse.org/downloads/download.php?file=/jetty/stable-9/dist/jetty-distribution-9.1.0.v20131115.tar.gz&r=1

しかし、私がしようとすると

Sudo tar -xfz etty-distribution-9.1.0.v20131115.tar.gz

エラーが出る

tar: z: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now

何が悪いのですか? (私はルートとしても試しましたが、役に立ちませんでした)


[〜#〜]編集[〜#〜]

提案された答えのどれも私のために働いていません。以下に、コマンドラインからの試行をコピーします。何が悪いのですか?

a@b:/usr/local/src$ ls
download.php?file=%2Fjetty%2F9.1.0.v20131115%2Fdist%2Fjetty-distribution-9.1.0.v20131115.tar.gz
download.php?file=%2Fjetty%2Fstable-9%2Fdist%2Fjetty-distribution-9.1.0.v20131115.tar.gz

a@b:/usr/local/src$ tar -tfz jetty-distribution-9.1.0.v20131115.tar.gz
tar: z: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now

a@b:/usr/local/src$ tar -tfz /usr/local/src/jetty-distribution-9.1.0.v20131115.tar.gz
tar: z: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now

a@b:/usr/local/src$ Sudo tar xfz download.php?file=%2Fjetty%2F9.1.0.v20131115%2Fdist%2Fjetty-distribution-9.1.0.v20131115.tar.gz
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
a@b:/usr/local/src$ Sudo tar xfz jetty-distribution-9.1.0.v20131115.tar.gztar (child): jetty-distribution-9.1.0.v20131115.tar.gz: Cannot open: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
a@b:/usr/local/src$ ^C
a@b:/usr/local/src$ 
6
Zeynel

ダッシュの使用と引数の順序が問題のようです:

$ tar tfz foo.tar.gz
foo
$ tar -tfz foo.tar.gz
tar: z: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
$ tar -tzf foo.tar.gz
foo
$ tar --version
tar (GNU tar) 1.15.1

編集:次の2つのコマンドは私にとってはうまくいくようです:

wget http://download.Eclipse.org/jetty/stable-9/dist/jetty-distribution-9.1.0.v20131115.tar.gz
tar tzf jetty-distribution-9.1.0.v20131115.tar.gz

もちろん、tar tzftar xzfに置き換える必要があり、場合によってはSudoを追加する必要があります。

7
Joseph Quinsey

問題は、f引数の位置にある可能性があります。アーカイブの名前はf引数の後に続くことになっているため、zというファイルを開くことができないというエラーメッセージが表示されます。

試してください:

tar -tzf jetty-distribution-9.1.0.v20131115.tar.gz
4
James R. Twine

コマンド Sudo wget http://Eclipse.org/downloads/download.php?file=/jetty/stable-9/dist/jetty-distribution-9.1.0.v20131115.tar.gz&r=1は2つの理由で間違っています:

  1. &を使用しているため、ダウンロードリンクは引用する必要があります。 http://www.gnu.org/software/bash/manual/bash.html#Definitions を参照してください
  2. 古いデッドリンクを使用しています。 jettyのダウンロードページ( http://download.Eclipse.org/jetty/ )にアクセスすると、http://Eclipse.org/downloads/download.php?file=/jetty/stable-9/dist/jetty-distribution-9.1.3.v20140225.tar.gz&r=1を正しいダウンロードリンクとして。

その後、次のコマンドを使用する必要があります。

Sudo wget "http://Eclipse.org/downloads/download.php?file=/jetty/stable-9/dist/jetty-distribution-9.1.3.v20140225.tar.gz&r=1" -O jetty-distribution-9.1.3.v20140225.tar.gz`

-O引数は、正しいファイル名に出力するのに役立ちます。

その後、 tar xvf jetty-distribution-9.1.3.v20140225.tar.gzは動作するはずです。

ここで、オプションxは抽出モードを使用し、vは詳細情報(抽出されるファイルの名前)を表示し、fは次の引数が抽出するアーカイブへのパスであることを指定します。

zは自動的に認識するため、gzip圧縮アーカイブを示すtarオプションは必要ありません。

最後に、-上記のオプションは非推奨のAFAIKです。

もう1つ:本当に必要ない場合はSudoの使用はお勧めしません。ここでは、root権限を必要としないアーカイブをダウンロードして抽出するだけで、ホームディレクトリで実行できます。特に深刻な問題を引き起こす可能性のあるミスを回避します。

1
piernov

私は同様の問題を抱えていましたが、以下のコマンドで抽出することができました。

Sudo tar -zxvf your_package_name.tar.gz -C /opt/

それが役に立てば幸い!

0
rc.adhikari