scp를 사용하여 특정 확장자를 가진 파일 복사


19

.jpg및로 .png파일 을 복사하고 싶지만 복사하려는 scp동일한 폴더에 다른 확장자를 가진 파일이 있습니다. 나는 다음을하고있다 :

scp user@someRemoteHost.com:/folder/*.{jpg,png} .

각 확장 유형마다 비밀번호를 입력하라는 메시지가 표시됩니다. 비밀번호를 한 번만 입력 할 수있는 방법이 있습니까?

답변:


31

다음과 같이 바꾸십시오.

scp user@someRemoteHost.com:'/folder/*.{jpg,png}' .

작은 따옴표 쌍을 유의하십시오. 귀하의 경우 로컬 셸은 표현식을 평가하여 실제로 다음과 같이 바꿉니다.

scp user@someRemoteHost.com:/folder/*.jpg user@someRemoteHost.com:/folder/*.png .

따라서 두 개의 암호가 물었습니다. 이 솔루션에서 작은 따옴표 쌍은 로컬 셸에 의한 평가로부터 따옴표를 보호하므로 표현식을 평가하는 (원격) scp에 의해 호출되는 원격 셸입니다.


해당 디렉토리의 모든 서브 디렉토리를 포함 시키려면 어떻게해야합니까?
xxx ---

@ pushpen.paul png 및 jpg 파일 만 선택할 필요는 없지만 모든 것을 복사하려면 예를 들어 사용 scp -r user@someRemoteHost.com:'/folder' . 하십시오. 그렇지 않은 경우 하위 디렉토리에서 png 및 jpg 만 복사하려면 scp 또는 sftp를 사용할 수 없지만 (가능한 사용자 정의 스크립트가있는 sftp / lftp가 아닌 경우) 대신 ssh + tar 쌍과 같은 것을 실행해야합니다. 그런 다음 특정 요구 사항에 대한 자신의 질문을해야합니다.
AB

7

서버 간 복사 작업에 rsync를 사용하는 것이 좋습니다.

 rsync -avzh user@remoteip:/path/*.jpg user@192.168.159.155:/path/*.png localserverpath

rsync를 사용하면 암호를 한 번만 요청합니다.

또한 파일을 전송하는 동안 rsync에서 파일이 존재하는지 여부를 대상 위치에서 확인하고 컨텐츠가 소스 위치 및 대상 위치에 있는지 여부를 확인합니다.

파일이 대상 위치에도 존재하고 내용도 동일하면 해당 파일을 복사하지 않습니다. 대상 위치에없는 파일 만 복사하므로 처리 시간이 줄어 듭니다.

rsync는 종종 증분 백업 도구로 사용됩니다.


8
에 상관없이 사용하는 경우 rsync또는 scp지점은 즉, /folder/*.{jpg,png}인용한다 '/folder/*.{jpg,png}' .
αғsнιη
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.