지금은 백업 스크립트를 작성 중입니다. 프로세스 속도를 높이기 위해 rsync
백업하고 싶은 폴더를 모두 사용했습니다.(이것도 비슷해요 rysnc -a --delete --progress $folder1 $folder2 $folder3 backupfolder/
:)
지금 이 상황을 되돌리고 싶다면(컨텐츠를 backupfolder
해당 폴더에 배포하는 것을 의미합니다.)어떻게 해야 합니까?
편집하다:
나는 몇 가지 조사를 했고 다음과 같은 사실을 알아냈습니다.
for folder in $folder1 $folder2 $folder3
do
rsync -a --delete --progress backupfolder/$(basename $folder)/ $folder/
done
그리고 그 반대는 다음과 같습니다.
rysnc -a --delete --progress $folder1 $folder2 $folder3 backupfolder/
루프 없이 이를 수행할 수 있는 방법이 있습니까? 명령이 하나만 있으면 가장 좋을 것입니다!
답변1
backupfolder
복원할 디렉터리만 포함된 경우 backupfolder
자체적으로 복원됩니다.
rsync -a /path/to/backupfolder/ .
/
첫 번째 매개변수 끝에 있는 값을 참고하세요 . 그렇지 않으면 디렉터리가 하위 디렉터리로 되돌아갑니다.
특정 하위 디렉터리만 포함하려면 필터를 사용하세요.
rsync -a --include='/folder1' --include='/folder2' --exclude='/*' /path/to/backupfolder/ .
답변2
어쩌면 루프를 사용할 수도 있습니다 ...
for folder in folder1 folder2 folder3
do
rsync -a --delete --progress backupfolder $folder
done