이전 버전의 zimbra(7.1.4)에서 버전 8.7.7로 imap을 동기화하기 위해 imapsync 1.727을 테스트하고 있는데 다음 명령을 사용하면 위에서 언급한 오류가 발생합니다.
imapsync \
--maxsize 52428800 --buffersize 8192000 \
--nofoldersizes --nosyncacls --subscribe --syncinternaldates \
--authmech2 PLAIN \
--exclude '(?i)\b(Junk|Spam|Trash)\b' \
--skipheader 'X-*' \
--regexflag 's/\\\\(Answered|Flagged|Deleted|Seen|Recent|Draft)[^\s]*\s*//ig' --debugflags \
--regextrans2 's,:,-,g' \
--regextrans2 's,\",'\'',g' \
--regextrans2 's,\s+(?=/|$),,g' \
--regextrans2 's,^(Briefcase|Calendar|Contacts|Emailed Contacts|Notebook|Tasks)(?=/|$), $1 Folder,ig' \
--host1 "$host1" --host2 "$host2" \
--user1 "$username" --authuser1 admin_account_name \
--password1 admin_account_password \
--user2 "$username" --authuser2 admin_account_name \
--password2 admin_account_password \
--regextrans2 's,\",-,g' \ # change quotes to dashes
--regextrans2 's,&AAo-|&AA0ACg-|&AA0ACgANAAo-(?=/|$),,g' \
--ssl1 --authmech1 PLAIN --maxcommandlength1 16384 \
--dry --debug --debugimap \
18번째 줄에서는 실패하고 regtrans2는 다른 줄에서는 실패하는 이유는 무엇입니까?
답변1
같은 줄에는 연속 줄 뒤에 주석이 올 수 없습니다.
좋아요:
echo \
hello
이것은 작동하지 않습니다:
echo \ #newline here
hello
첫 번째 예에서 \
개행 문자를 이스케이프하면 실행되는 명령은 입니다 echo hello
.
두 번째 경우에는 \
공백을 이스케이프 처리 하면 #newline here
출력이 표시되고 그 뒤에는 오류 메시지 hello: not found [No such file or directory]
(또는 유사한 메시지)가 표시됩니다.
따라서 주석을 삭제하십시오(모든 것\
, 마지막 줄 뒤의 공백 포함) 이제 읽습니다.
--regextrans2 's,\",-,g' \ # change quotes to dashes
답변2
과거의 경험에 비추어 볼 때, 작동하기 전에 아래와 같이 구체적으로 재배치해야 할 것 같습니다.
imapsync \
--dry \
--host1 "$host1" --host2 "$host2" \
--user1 "$username" --authuser1 admin \
--ssl1 --authmech1 PLAIN \
--password1 "$admin_account_password" \
--user2 "$username" --authuser2 admin \
--ssl2 --authmech2 PLAIN \
--password2 "$admin_account_password" \
--maxsize 52428800 --buffersize 8192000 \
--nofoldersizes --nosyncacls --subscribe --syncinternaldates \
--authmech2 PLAIN \
--exclude '(?i)\b(Junk|Spam|Trash)\b' \
--skipheader 'X-*' \
--regextrans2 "s,&AAo-|&AA0ACg-|&AA0ACgANAAo-(?=/|$),,g" \
--regexflag 's/\\\\(?!Answered|Flagged|Deleted|Seen|Recent|Draft)[^\s]*\s*//ig' --debugflags \
--regextrans2 's,:,-,g' \
--regextrans2 's,\",'\'',g' \
--regextrans2 's,\s+(?=/|$),,g' \
--regextrans2 "s,^(Briefcase|Calendar|Contacts|Emailed Contacts|Notebook|Tasks)(?=/|$), $1 Folder,ig" \
--regextrans2 's,\",-,g' \