リモートサーバーのフォルダにあるディレクトリを自分のサーバーにコピーしたいと思います。それは可能ですか?これはこれまでのコードですが、ファイルとフォルダをコピーします。
scp -rq [email protected]:/copy/from/ /copy/it/here/
上記のコードに代わるものがあります。
ssh -q [email protected] "cp -r /copy/from/ /copy/it/here/"
問題は両方とも/copy/from/からフォルダ全体(すべてのフォルダとディレクトリを含む)をコピーすることです。ディレクトリだけをコピーする方法はありますか?
答え1
ただ構造を持ってきて、もう一度作ってみてはいかがでしょうか?
mkdir $( from=/copy/from;
to=/copy/it/here;
ssh -q [email protected] "find $from -type d" \
| sed "s=^$from/\?=$to/=" )
私はsed
絶対パスプレフィックスを削除し、それをターゲットパスプレフィックスに置き換えました。要件を満たしていることを確認echo
するには、テストするのではなく使用してください。mkdir
そして、ディレクトリ名に特殊文字を使用しないでください。