상상하다:
소스 디렉터리:
/day1/hour1/instance1/files.ext
/day1/hour1/instance2/files.ext
/day1/hour1/instance3/files.ext
/day1/hour2/instance1/files.ext
/day1/hour2/instance2/files.ext
등..
대상 디렉터리(이미 존재함):
/day1/hour1/instance4/files.ext
/day1/hour1/instance5/files.ext
/day1/hour1/instance6/files.ext
/day1/hour2/instance6/files.ext
/day1/hour2/instance7/files.ext
소스에서 타겟으로 모든 파일을 복사해야 합니다.
보시다시피 동일한 트리가 있습니다. 즉, 동일한 날짜와 동일한 시간을 의미하지만 소스와 대상의 인스턴스는 다릅니다. 소스의 모든 디렉터리와 파일을 대상의 동일한 트리로 복사해야 하지만 이미 대상 폴더에 있는 모든 파일은 유지해야 합니다.
어떻게 해야 하나요?
cp -R
그것이 나에게 필요한 것인가? 아니면 매개변수를 더 추가해야 합니까?
답변1
그리고 rsync
:
rsync --archive --ignore-existing source_dir/ target_dir/
source_dir
이렇게 하면 계층 구조 inte가 복사되지만 inte에 이미 존재하는 파일을 target_dir
덮어쓰지는 않습니다 .target_dir
답변2
대신 rsync를 사용할 것 같아요. rsync를 사용하면 데이터를 복사하고 동기화할 수 있습니다. 일반적인 매개변수는 다음과 같습니다.
rsync -avh source destination
v 상세 정보 a의 경우 재귀 및 파일 권한, 소유권 및 타임스탬프 보존의 경우 h 사람이 읽을 수 있는 출력 번호 생성의 경우