Bash 스크립트를 사용하여 두 폴더 간의 파일 비교 및 ​​복사

Bash 스크립트를 사용하여 두 폴더 간의 파일 비교 및 ​​복사

상위 폴더와 하위 폴더가 있습니다. 상위 폴더와 하위 폴더를 비교하고 누락된 파일을 상위 폴더에서 하위 폴더로 복사해야 합니다. 디렉터리가 아닌 파일만 복사해야 합니다.

답변1

사용 rsync. 이런 종류의 작업을 위해 설계되었습니다. 예를 들어rsync * Child/

어떤 이유로 쉘 내장만 사용할 수 있는 경우 다음을 수행할 수 있습니다.

cd /path/to/Parent
for f in *; do
  [ -f "$f" ] && [ ! -e "Child/$f" ] && cp "$f" Child/
done

영어: "$f"가 일반 파일인 경우 "$f"를 사용하여 현재 디렉터리의 모든 파일을 반복합니다.그리고Child/에 없으면 거기에 복사됩니다.

관련 정보