rsync: cum să excludeți directoare cu caracter special prin intermediul unui fișier de excludere extern (Programare, Bash, Linie De Comandă, Rsync)

nathan lachenmyer a intrebat.
a intrebat.

Încerc să fac o copie de rezervă a unui server cu un script rsync automatizat cu cron. În acest moment folosesc comanda:

rsync -avz –progress –exclude-from „/Users/user/Scripts/exclude.txt” -e ssh [email protected]:$REMOTE_PATH $LOCAL_PATH > /tmp/rsync.log

cu $REMOTE_PATH și $LOCAL_PATH definite în scriptul bash.

Am un director numit #recycle pe care încerc să îl ignor și nu sunt sigur cum să îl exclud cu un fișier. Dacă folosesc opțiunea –exclude ‘#recycle/’, atunci directorul este ignorat fără probleme. Cu toate acestea, dacă includ opțiunea de mai sus cu o etichetă –exclude-from, fișierul conținând doar linia:

#recycle/

atunci nu funcționează. De asemenea, am încercat #recycle/, dar scăparea semnului „pound” nu pare să rezolve problema. Sunt destul de sigur că poundul cauzează toate problemele, dar nu am niciun control asupra numelor de directoare. Aveți vreo idee despre cum să remediați această problemă?

mulțumesc!

1 răspunsuri
acel alt tip

Liniile care încep cu # sunt ignorate în fișierele de excludere, da.

În schimb, puteți folosi [#]recycle care se potrivește cu același lucru, dar nu este eliminat ca un comentariu.

Comentarii

  • Vă mulțumim! Asta a fost tot! Am încercat să folosesc un „
    ca caracter de scăpare, dar a funcționat foarte bine! –  > Por nathan lachenmyer.
  • Acest lucru a funcționat foarte bine. Unitățile mele Synology adaugă „#recycle” la folderele în care a fost activată această funcție pe un folder partajat. Lăsând recomandarea sa în cazul în care oricine altcineva are o problemă cu rsync pe Synology. –  > Por Phil.
  • Fellow Synology utilizator Synology aici, de asemenea, folosind Rsync. A fost având aceeași problemă. Mulțumesc! –  > Por Nicolas.