Unison으로 한 가지 파일 형식만 동기화하는 방법은 무엇입니까?

Unison으로 한 가지 파일 형식만 동기화하는 방법은 무엇입니까?

폴더를 한마음으로 동기화하고 싶지만 .jpg 파일만 동기화하고 싶다고 가정해 보겠습니다.

내가 어떻게 그럴 수 있지?

답변1

프로필에 다음 줄을 추가해야 합니다.

ignore = Name ?*
ignorenot = Name *.jpg

답변2

8년 후... 마침표나 점 파일이 없는 파일은 제대로 무시되지 않습니다.

Regex ^((?!.jpg).)*$그리고 이들과 일치하는 모든 패턴(예: )은 .jpg를 하위로 가질 수 있는 디렉토리도 먹어치울 것입니다. (아래의 "Unison이 업데이트 검색을 시작합니다..."를 참조하세요.경로 무시설명서에 나와있습니다.)

내가 찾은 유일한 방법은 포함된 추가 파일을 사용하여 동기화를 진행한 다음 다음을 사용하는 것입니다.

find "$DEST" --type f ! -iname "*.jpg" -delete
find "$DEST" --type d -empty -delete

그들을 죽인 다음 빈 디렉토리를 정리하십시오. (나의 경우 실제로 그랬다.

find "$DEST" --type d -empty ! -name ".stfolder" -delete

SyncThing 마커 디렉터리를 보존하려면 묻지 마세요.)

이로 인해 잠재적으로 나쁜 결과는 짧은 시간 동안 많은 추가 데이터를 복사하는 것입니다. 제 경우에는 약 3.5GB가 한 파티션에서 다른 파티션으로 이동한 다음 즉시 삭제됩니다.

관련 정보