何百ものサブフォルダがネストされた大きなディレクトリツリーがあります。4つのフォルダーとその内容のみをリモートシステムにコピーする必要がありますが、宛先フォルダーの構造を同じに保つ必要があります。
例えば
./test/sub1/subsub1/hello.txt
./test/sub1/subsub2/hello2.txt
./test/sub2/hello3.txt
./test/sub1/subsub1/*をuser @ system:〜/ test / sub1 / subsub1 / *などのターゲットにコピーしたいのですが、subsub2やsub2をコピーしたくありません。
私は次のようにscpを使用してみました:
scp -r ./test/sub1/subsub1 me@my-system:~/test/sub1/subsub1
結果:scp:/ test / sub1 / subsub1:No such file or directory
私も試しました:
scp -r ./test/sub1/subsub1 me@my-system:~/test
これは機能しますが、すべてのファイルを単一のディレクトリにダンプします。/ test / sub1 / subsub1ディレクトリ構造は維持されません。
フォルダーの構造を維持しながら、フォルダーをコピーするにはどうすればよいですか?
2パスのソリューションが必要です。まず、ターゲットディレクトリがリモートホストに存在することを確認します。
ssh me@my-system 'mkdir -p ~/test/sub1/subsub1'
その後、ファイルをコピーできます。ディレクトリの同期用に設計されているため、rsync
ではなくを使用することをお勧めしscp
ます。使用例:
rsync -r -e ssh ./test/sub1/subsub1/ me@my-system:~/test/sub1/subsub1
-e
フラグは、転送を実行するために使用するリモートシェルを受け付けます。末尾のスラッシュはで非常に重要でrsync
あるため、スラッシュが上記の例と一致していることを確認してください。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加