특정 파일 목록만 다른 서버의 동일한 위치로 동기화하는 방법

특정 파일 목록만 다른 서버의 동일한 위치로 동기화하는 방법

파일 목록이 있습니다: /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 키를 사용하여 조사할 수도 있습니다.

관련 정보