
내 목표는 단지 복사하는 것입니다모든 파일~에서~/로컬 디렉토리도착하다[이메일 보호됨]/var/www/html/target_dir사용SCP그리고 local_dir에 local_dir 카테고리를 생성하지 마세요.
/var/www/html/target_dir/files..
하지만
/var/www/html/target_dir/local_dir/files..
-r 매개변수를 사용하는 경우
답변1
scp에는 -r 매개변수가 있습니다. 따라서 다음을 사용해 보십시오:
$ scp -r ~/local_dir [email protected]:/var/www/html/target_dir
-r 인수는 cp의 -r 인수와 동일하게 작동하며 전체 폴더와 그 안에 있는 모든 파일 및 하위 디렉터리를 전송합니다.
답변2
local_dir
와일드카드의 모든 파일을 전송하는 것이 목표라면 다음을 *
수행할 수 있습니다.
$ scp ~/local_dir/* [email protected]:/var/www/html/target_dir
이 -r
옵션은 "recursive"를 의미하므로 전체 디렉터리 또는 여러 디렉터리를 전송하려고 할 때 작성해야 합니다.
에서 man scp
:
-r
Recursively copy entire directories. Note that scp follows symbolic links encountered in the tree traversal.
따라서 local_dir
마지막 예에서는 내부에 하위 디렉터리가 있는 경우에만 파일을 전송하지만 해당 -r
옵션을 설정하면 파일과 디렉터리가 전송됩니다.
답변3
소스 디렉터리에 추가하면 /.
디렉터리 자체가 아닌 해당 내용이 전송됩니다. 와일드카드 솔루션과 달리 여기에는 숨겨진 파일도 모두 포함됩니다.
$ scp -r ~/local_dir/. [email protected]:/var/www/html/target_dir
이 솔루션에 대한 크레딧은 roaima에 있지만 댓글이 아닌 실제 답변으로 게시되어야 한다고 생각합니다.
답변4
반품
rsync -avP ~/local_dir/ [email protected]:/var/www/html/target_dir/
작동해야합니다.
-n
마지막에 실행하시면 됩니다
rsync -avP ~/local_dir/ [email protected]:/var/www/html/target_dir -n
작업을 시뮬레이션하고 결과가 원하는 것인지 확인할 수 있습니다.