다음 명령을 사용하여 홈 폴더를 외부 드라이브에 백업하려고 합니다.
rsync -acu --delete --exclude-from='/home/chh1/rsync_exclude.txt' /home/ /media/chh1/f86f92f7-bcb4-4b8e-8a64-8a210606d422/home_backup/
--exclude-from= 파일
/home/chh1/rsync_exclude.txt
다음 항목이 포함되어 있습니다.
.cache
crewdb.bak.sql
루트 권한이 필요한 파일과 /home/chh1/.cache에 포함된 불필요한 .cache 데이터를 제외하고 싶기 때문에 .cache뿐만 아니라 그 안에 포함된 .dconf도 제외하고 싶습니다.
내가 달릴 때
find ~ -name ".cache"
다음과 같은 결과가 나타납니다.
/home/chh1/snap/pdfmixtool/common/.cache
/home/chh1/snap/gnome-system-monitor/common/.cache
/home/chh1/snap/okular/63/.cache
/home/chh1/snap/freemind/common/.cache
/home/chh1/.cache
find: ‘/home/chh1/.cache/dconf’: Permission denied
정말 제외하고 싶어요
/home/chh1/.cache
dconf 및 일반 .cache 정크도 처리합니다. 그러나 find 명령을 실행할 때 발견된 다른 .cache 디렉토리를 제외하고 싶지 않습니다.
--exclude-from=은 제외 파일에 있는 것과만 패턴을 일치시키므로, 패턴이 아닌 경로를 지정하고 제외 파일 내에서 어떻게 경로를 지정할 수 있습니까? 방법이 있나요?
도와주셔서 정말 감사드립니다!
답변1
/home/
귀하의 경우 제외 목록에는 시작 디렉터리 아래에 일치하는 절대 이름도 있을 수 있습니다 . 라인을 이용하세요
/chh1/.cache
.cache
단지 제외하는 대신 /home/
/chh1/.cache
, 즉/home/chh1/.cache