![일부 2개 폴더에 대해 수정/업데이트된 파일만 재귀적으로 추가/교체하는 방법은 무엇입니까?](https://linux55.com/image/20476/%EC%9D%BC%EB%B6%80%202%EA%B0%9C%20%ED%8F%B4%EB%8D%94%EC%97%90%20%EB%8C%80%ED%95%B4%20%EC%88%98%EC%A0%95%2F%EC%97%85%EB%8D%B0%EC%9D%B4%ED%8A%B8%EB%90%9C%20%ED%8C%8C%EC%9D%BC%EB%A7%8C%20%EC%9E%AC%EA%B7%80%EC%A0%81%EC%9C%BC%EB%A1%9C%20%EC%B6%94%EA%B0%80%2F%EA%B5%90%EC%B2%B4%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
그래서 저는 현재 다음과 같은 일을 하고 있습니다.
rm -rf ../../../$CLOUD_INSTALL_SUBDIR/lib_boost
mkdir ../../../$CLOUD_INSTALL_SUBDIR/lib_boost
cp -r ../../../$BOOST_ROOT_DIR/$BOOST_INSTALL_SUBDIR/lib/* ../../../$CLOUD_INSTALL_SUBDIR/lib_boost/
너무 안타깝습니다...그래서 두 폴더 사이에 최신 파일만 업데이트/삭제/추가하는 방법을 알고 싶습니다(데모에는 최신 콘텐츠가 포함된 폴더 ../../../$BOOST_ROOT_DIR/$BOOST_INSTALL_SUBDIR/lib/
와 오래된 콘텐츠 폴더가 포함된 파일이 있음 ../../../$CLOUD_INSTALL_SUBDIR/lib_boost
).
답변1
Rsync는 최신이자 가장 친한 친구입니다.
rsync -av original/folder/ new/folder/
후행 슬래시는 두 가지 모두에 중요합니다. 첫 번째 항목을 제외하면 해당 폴더가 자체 폴더로 복사됩니다 . 권한, 타임스탬프 등을 보존하려면 new/folder/
해당 플래그를 사용하는 것이 가장 좋습니다.-a
Rsync는 또한 구조를 복사하기 위해 필요에 따라 자동으로 디렉터리를 생성합니다.
답변2
이를 달성하기 위해 rsync를 사용할 수 있습니다. 귀하의 예에서는 다음과 같습니다.
rsync -va ../../../$CLOUD_INSTALL_SUBDIR/lib_boost/ ../../../$CLOUD_INSTALL_SUBDIR/lib_boost
-v 옵션은 상세 모드를 활성화하고 -a 옵션은 아카이브 모드를 활성화합니다.
rsync에 대한 자세한 내용은 다음에서 확인할 수 있습니다.매뉴얼 페이지