- 追加された行はこの色です。
- 削除された行はこの色です。
* tar コマンド [#oc79c536]
** コピー [#s7e07675]
tar zcvf - ./src_dir | ( cd /tmp; tar zxvf -)
# コピー元のディレクトリ
mkdir $HOME/tmp/src_dir
touch $HOME/tmp/src_dir/1
# コピー先のディレクトリ(あらかじめ作っておく)
mkdir $HOME/tmp/dest_dir
# コピー元のディレクトリに入る
cd $HOME/tmp/src_dir
# コピーする
tar cvf - . | ( cd $HOME/tmp/dest_dir ; tar xvf - )
# もしくは
tar cvf - . | tar xvf - -C $HOME/tmp/dest_dir
** ncでネットワークコピー [#hc8725f5]
# コピー先のremoteサーバ上でポート3333をLISTENする
nc -l 3333 > test.tar.gz
次に
# コピー元のサーバ上でremote-srvの3333にtarの出力を投げる
tar zcvf - src_dir | nc remote-srv 3333
** sshでネットワークコピー [#d3765960]
tar zcvf - src_dir | ssh remote-srv "tar zxvf - -C tmp/"
圧縮ファイルのままコピーするなら
tar zcvf - src_dir | ssh remote-srv "cat - > tmp/test.tar.gz"
** 圧縮ファイルを指定したディレクトリに展開 [#kd7ddf96]
cat foo.tar.gz | ( cd $HOME/tmp/target_dir; tar zxvf - )