scp를 사용하여 디렉토리의 모든 파일을 원격 디렉토리로 복사하는 방법은 무엇입니까?


68

내 목표는 사본 아니라 모든 파일을 에서 ~ / local_diruser@host.com의 / 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 * user@host.com:/var/www/html/target_dir당신이 원하는 무엇을하지? 그렇다면 지금 시도하고 시도한 작업에 대한 자세한 내용을 편집 하십시오 .
Michael Homer

추가 /. 더 이상 작동하지 않습니다. 여기 더
Tsulatsi Tamim

답변:


91

scp에는 -r 인수가 있습니다. 따라서 다음을 사용하십시오.

$ scp -r ~/local_dir user@host.com:/var/www/html/target_dir

-r 인수는 cp의 -r arg와 동일하게 작동하며 전체 폴더와 모든 파일 및 하위 디렉토리를 전송합니다.


5
명령 local_dir이 / var / www / html / target_dir에 디렉토리를 만들었습니다. 내 목표는 파일 만 복사하는 것입니다.
Edgaras Karka

죄송합니다. 잘못되었습니다. 그런 다음 명령을 반복하지만 $ scp -r ~/local_dir user@host.com:/var/www/html/다음 과 같이 수행하십시오. 필요한 경우 새 디렉토리의 이름을 바꾸십시오.
parazyd

8
또는 $ scp -r ~/local_dir/* user@host.com:/var/www/html/target_dir무엇이 당신의 배를 뜬다.
parazyd

원격으로 복사하는 동안 로컬에서 특정 디렉토리를 제외하는 방법
Sushivam

13
와일드 카드 *를 점으로 변경하면 .디렉토리 자체를 복사하지 않고 디렉토리 내용 (도트 파일 포함)을 복사합니다. scp -pr ~/local_dir/. user@example.com:/path/to/target_dir
roaima

19

당신의 목표는 모든 파일을 전송하는 경우 와일드 카드 트릭을 수행합니다local_dir*

$ scp ~/local_dir/* user@host.com:/var/www/html/target_dir

-r옵션은 "재귀 적으로"를 의미하므로 전체 디렉토리 또는 여러 디렉토리를 전송할 때 작성해야합니다.

보낸 사람 man scp:

-r 
Recursively copy entire directories. Note that scp follows symbolic links encountered in the tree traversal.

따라서 내부에 하위 디렉토리가 local_dir있는 경우 마지막 예제는 파일 만 전송하지만 -r옵션 을 설정하면 파일과 디렉토리가 전송됩니다.


1+ 정답을 얻으려면 수락 된 답변의 주석을 읽어야하기 때문에이 답변은 직접 설명합니다.
안드레 크리스토퍼 안데르센

17

/.소스 디렉토리에 추가 하면 디렉토리 자체 대신 컨텐츠가 전송됩니다. 와일드 카드 솔루션과 달리 여기에는 숨겨진 파일도 포함됩니다.

$ scp -r ~/local_dir/. user@host.com:/var/www/html/target_dir

이 솔루션에 대한 크레딧은 roaima에 전달되지만 의견뿐만 아니라 실제 답변으로 게시되어야한다고 생각했습니다.


0

이 단계를 따르세요:

  1. local_dir모든 하위 디렉토리가 있는 디렉토리 를 복사하십시오 .

    scp -r ~/local_dir user@host.com /var/www/html/target_dir
    
  2. local_dir디렉토리 local_dir자체가 아닌 내용 만 복사하십시오 .

    scp -r ~/local_dir/* user@host.com /var/www/html/target_dir
    
  3. 사용하지 마십시오 : scp -r ~/local_dir/. user@host.com /var/www/html/target_dir오류가 발생하므로 테스트하고 다음 오류를 수신하십시오.

    scp: error: unexpected filename: .
    
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.