こんにちは、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で質問しましょう!
似たような質問が見つかりました
- UNIX・Linux Linuxのtarコマンドで同一ディレクトリに解凍するコマンドは何でしょうか? 1 2022/04/25 12:59
- Android tar.ファイルのインストールについて知りたいです 2 2022/07/23 15:34
- UNIX・Linux cronの@rebootでのdateコマンドの実行につきまして 2 2023/06/11 16:23
- Windows 10 バッチファイルの記述法とルールについてアドバイスをお願いいたします。 1 2022/04/13 10:50
- HTML・CSS 全部のアクセスを指定したページに転送させたい 2 2022/06/28 16:33
- その他(開発・運用・管理) バッチファイルで特定のファイル・ディレクトリ以外を削除する方法について 4 2022/05/31 14:03
- PHP PHPを使って、別サイトの一部を取得して表示したいのです。。 1 2023/01/18 21:45
- その他(開発・運用・管理) WindowsからSSHでサーバーにあるファイルをダウンロードできない…。 3 2022/04/24 11:08
- JavaScript JavaScriptで「〇以上▲まで」の書き方 1 2022/07/20 14:44
- Visual Basic(VBA) VBAでの共有パスにつきまして 1 2023/03/04 17:24
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Apache2.4のダウンロードについて
-
rmとrmdirについて
-
誤って/home配下を削除してしま...
-
net use /d の強制実行
-
Linuxのスラッシュ,ピリオドの...
-
tarで纏める際に、複数場外した...
-
コマンドプロンプトで何故パラ...
-
シェルスクリプトを使ったSCPの...
-
ソフトのインストール場所?
-
ユーザーの切替をすると・・
-
rmコマンドについて
-
Dirコマンドでフォルダ内ファイ...
-
batである文字列内に特定の文字...
-
TOPコマンドで表示するCPU使用...
-
エクセルの表にヘンな枠が・・・
-
テキストファイルから最終行の抽出
-
スクリプトのエラー「unexpecte...
-
ラズパイで『’test.service’をs...
-
ファイル名についている「-」と...
-
SONYの音楽ソフト「x-アプリ」...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
net use /d の強制実行
-
tar.bz2ファイルのインストール...
-
Windowsのローカルディレクトリ...
-
sylpheedメールソフト 受信でき...
-
DOSコマンドで cmd /c rd /s /...
-
tarで纏める際に、複数場外した...
-
Apache2.4のダウンロードについて
-
誤って/home配下を削除してしま...
-
zshのコマンド履歴がヒストリフ...
-
ls -1R の結果をフルパスで欲しい
-
rc.d や init.d の 「.d」の意味
-
コマンドプロンプトでコマンド...
-
cd desktop としてディレクト...
-
Linuxのスラッシュ,ピリオドの...
-
ln ハードリンクをワイルドカー...
-
tarで圧縮したファイルの解凍時...
-
"no space left on device"と出...
-
コマンドプロンプトで何故パラ...
-
パスの設定とかパスを通すって...
-
IIS4.0のFTPサービスについて
おすすめ情報