
こんにちは、tarについてご教授ください。
tar czvf /home/hoge/test.tar.gz /home/hoge/testdir
↑の様に圧縮したとします。
これを同じ場所に解凍したいのです。
/home/hoge/test.tar.gz を /home/hoge/ のディレクトリの中から下記の様に解凍します。
tar zxvf /home/hoge/test.tar.gz
すると、/home/hoge/home/hoge/testdir/ に解凍されてしまいます。
試しに
tar zxvf /home/hoge/test.tar.gz /
と言う感じに指定できたら、問題解決なんですが・・・これはできませんでした。
/に移動してからコマンドを発行ということも訳あってできません。
というのもPHPのプログラム上からsystemコマンドで圧縮と解凍をしているのですが、
解凍すると、PHPがあるディレクトリからの相対パスに解凍されてしまいます。
指定した場所に解凍するということはできませんでしょうか?
tar --help でみてみたのですが、それらしきオプションは探せませんでした。
zipはまだ使ったことありませんが、こちらを使った方がサーバーへの負荷や扱いやすさでは上なのでしょうか?
ご教授お願い致します。
No.4ベストアンサー
- 回答日時:
通常のコマンドラインからは、ターゲットとなるディレクトリを相対パスでアーカイブすれば、皆さんがご回答しているように「-C」オプションで所望の結果を得ることができます。
> cd /home/hoge ; tar zcvf test.tar.gz testdir
> tar zxvf test.tar.gz -C /home/hoge
あるいはアーカイブ、および展開する際、絶対パスで扱うよう「-P」オプションを指定します。
> tar zcvf /home/hoge/test.tar.gz /home/hoge/testdir -P
> tar zxvf /home/hoge/test.tar.gz -P
回答ありがとうございました。
-Cでエラーになっていたのは、記述する場所が悪かったようでした。
最後に-Cオプションを入れたらきちんと動作しました。
ありがとうございました。
No.3
- 回答日時:
tar zxvf /home/hoge/test.tar.gz --directory=/home/hoge
みたいのは?
No.1
- 回答日時:
Cオプションでできませんか?
この回答への補足
やってみたのですが、エラーになってしまいました。
ヘルプでは下記の様に出てきます。
-C, --directory=DIR change to directory DIR
エラーメッセージは下記です。
tar: -C: open 不能: そのようなファイルやディレクトリはありません
tar: エラーを回復できません: 直ちに終了します
tar: Child returned status 2
これは、圧縮時に指定するオプションでしょうか?
やっとできました。-Cの場所が悪かったみたいでした。
解凍したいファイルを記述した後にこのオプションを入れたらきちんと動作しました。
解凍したいファイル名の前にこのオプション入れたらエラーになります。
解決しました。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
net use /d の強制実行
-
Windowsのローカルディレクトリ...
-
sylpheedメールソフト 受信でき...
-
Linux のシェルスクリプトの強...
-
UNIX コマンドにおける # や円...
-
SONYの音楽ソフト「x-アプリ」...
-
ファイル名一覧の印刷
-
bashでシングルクォート内の変...
-
スクリプトのエラー「unexpecte...
-
「環境変数名の編集」ウィンド...
-
シェルスクリプトとターミナル...
-
IPアドレスだとPingが通るのに...
-
echo $!の意味を教えてください
-
Dirコマンドでフォルダ内ファイ...
-
compressコマンドってなくなっ...
-
シェルスクリプト実行で”そのよ...
-
mac os x10.6.4のターミナルでp...
-
gfortranでmakefile
-
コマンドプロンプトとかで、net...
-
windows10のごみ箱をrd /s /q C...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
net use /d の強制実行
-
Windowsのローカルディレクトリ...
-
tarで纏める際に、複数場外した...
-
DOSコマンドで cmd /c rd /s /...
-
ls -1R の結果をフルパスで欲しい
-
tarで圧縮したファイルの解凍時...
-
コマンドプロンプトでコマンド...
-
Apache2.4のダウンロードについて
-
sylpheedメールソフト 受信でき...
-
下部にぶら下っているHPアド...
-
FTPのエラーメッセージで質問で...
-
tar.bz2ファイルのインストール...
-
絶対パスでアーカイブされたフ...
-
ディレクトリが作れません。
-
誤って/home配下を削除してしま...
-
教えて!cpコマンド
-
Linuxのスラッシュ,ピリオドの...
-
ディレクトリ削除 Dosコマンド
-
ImageMagickの使い方を教えて下...
-
コマンド スペースを含むディ...
おすすめ情報