
私は頻繁に大きなディレクトリを転送しますscp
が、ディレクトリを圧縮して送信し、すべてを 1 回で解凍できれば便利です。
このようなことは可能でしょうか?
答え1
rsync
代わりに圧縮オプションを有効にして使用するのはいかがでしょうか-z
?
rsync -az --progress source_dir/* remote_host:/destination_dir
これには、ファイルがすでに存在し、転送先に変更されていない場合は転送されないという追加の利点もあります。
答え2
@johnshen64さんの回答のおかげで、とてもいいものを思いつくことができました
tar -zc path/to/source | ssh user@remote tar -zxC path/to/destination
残念ながら、転送の進行状況は表示されません。この方法を使用すると、速度が驚くほど向上することがわかりました。
このような転送の進行状況を表示する方法を知っている方がいらっしゃいましたら、ご協力いただければ幸いです :)
答え3
まあ、私は代わりにタールを使うでしょう
tar cf - ディレクトリ | ssh サーバー 'tar xf -'
確認するにはvを追加できます。
zip も同じはずですが、私の意見では Linux では tar の方が堅牢です。