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

UNIX
記事内に広告が含まれています。

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

任意のディレクトリに展開したい場合の方法を備忘録としてポストします。

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

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

まずは 失敗する 方法。
下記のディレクトリ中にDBのダンプファイルがあるとします。

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

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

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

ここで Cオプション の登場です。
展開ファイル名の後に -C と展開先を指定すればエラーは出ません。

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

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

発想の転換ですね。

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

Apacheの再起動にはWebサービスを終了させずに設定変更を反映する「graceful」を使うべき
Apacheの再起動にはWebサービスを終了させずに設定変更を反映する「graceful」を使用すべきな理由を解説します。
UNIX
スポンサーリンク
シェアする
toogieをフォローする
タイトルとURLをコピーしました