두 개의 서로 다른 디렉터리에 있는 기존 파일을 비교하고, 없으면 복사하고, 그렇지 않으면 덮어씁니다.

두 개의 서로 다른 디렉터리에 있는 기존 파일을 비교하고, 없으면 복사하고, 그렇지 않으면 덮어씁니다.

2개의 서로 다른 디렉터리에 있는 파일을 비교한 다음 파일이 dir2에 없으면 dir1에서 dir2로 복사하고 이미 있으면 덮어쓰는 스크립트를 작성하려고 합니다.

사용할 수 있다는 것을 알고 있지만 diff dir1 dir2결과를 dir2에 어떻게 복사합니까? diff이 명령은 비슷한 결과를 제공하기 때문에 only in dir1: file1.txt내가 아는 한 파일 자체는 아닙니다(맞나요?)

적용 범위 부분에서는 명령을 사용하기로 결정했지만 [ -ot ]다시 한 번 이해해 보면 [ -ot ]파일과만 비교할 수 있고 디렉터리는 비교할 수 없습니까?

답변1

rsync로컬로 작업하고 파일 타임스탬프와 파일 크기를 테스트하세요.

rsync --archive /path/to/source/ /path/to/destination/

rsync단일 파일에 사용할 수도 있습니다 .

답변2

왜 안 돼 cp?

\cp -f /path/to/dir1/* /path/to/dir2/

관련 정보