![특정 파일 목록만 다른 서버의 동일한 위치로 동기화하는 방법](https://linux55.com/image/64911/%ED%8A%B9%EC%A0%95%20%ED%8C%8C%EC%9D%BC%20%EB%AA%A9%EB%A1%9D%EB%A7%8C%20%EB%8B%A4%EB%A5%B8%20%EC%84%9C%EB%B2%84%EC%9D%98%20%EB%8F%99%EC%9D%BC%ED%95%9C%20%EC%9C%84%EC%B9%98%EB%A1%9C%20%EB%8F%99%EA%B8%B0%ED%99%94%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
파일 목록이 있습니다: /location/file.txt
문서 내용:
/location1/file2.abc
/location2/location3/file1.abc
/location4/location5/fileX.cde
다음과 같이 파일을 다른 서버에 복사하고 싶습니다.
cat /location/file.txt | xargs -i scp {} user@server:/location
그런데 위의 예에서는 목록에 있는 모든 파일이 특정 위치에 복사되는데 동일한 위치(txt 파일 /location1/, /location2/location3/ 등과 같은 정확한 경로)에 복사하고 싶습니다.
어떻게 해야 합니까? rsync를 사용할 수도 있지만 (원격 서버에 대한) 비밀번호를 한 번만 입력하고 싶습니다.
답변1
rsync -av --files-from=/location/file.txt / user@server:/location/
/location1/file2.abc
그러면 로컬 파일이 등에 복사됩니다 /location//location1/file2.abc
.
rsync
한 번만 호출 되므로 ssh
비밀번호는 한 번만 입력하면 됩니다. 그러나 SSH 키를 사용하여 조사할 수도 있습니다.