UNIX

UNIX

【UNIX】tarコマンドで任意のディレクトリを展開先として指定する方法

2018/03/17

通常、tar.gzで圧縮されたファイルを「tar xzvf dbdump_20180306.tar.gz」のように指定すると、カレントディレクトリ(現在のディレクトリ)に解凍(展開)されてしまいます。
展開先のディレクトリを任意のディレクトリにしたい場合の方法を備忘録としてポストします。

tarコマンドで展開先を指定する際は C オプション を使う!

(失敗)オプション無しで展開先を指定する

まずは失敗する方法。

/var/www/yamada-develop/public_html/db_dump

ディレクトリ中にDBのダンプファイルがあるとします。

展開元ファイルのディレクトリへ移動後に /var/www/hoge/tmp/ へ直接展開しようとすると、以下のようになりました。

(成功)C オプション付きで展開

コマンドの後に -C オプションを使い、展開先を指定すればエラーは出ません。

Cオプションを使わない方法

Cオプションを使わない場合は、展開したいパスへカレントディレクトリ(現在のディレクトリ)を移動させてから、展開元のファイルを絶対パスで指定すれば、展開可能です。
逆に考えろってことですね。

なるほどですね。

関連するかもしれないポスト

【UNIX】Apacheの再起動にはWebサービスを終了させずに設定変更を反映する「graceful」を使う

-UNIX
-, , , ,