Încerc să fac backup pentru unele fișiere pe o altă unitate folosind rsync
.
Ca caz de testare, încerc următoarea comandă:
rsync -Rav --delete --stats /home/my_user/bin* „$dest”
Această comandă va copia fișierele și directoarele (cu conținutul lor) prezente în my $HOME
director și având nume ca ~/bin
, ~/binb
, ~/bin1
, ~/bin2
, etc până la destinație.
Cu toate acestea, când șterg oricare dintre fișierele sau directoarele numite ~/bin1
sau ~/bin2
de exemplu, acestea nu sunt șterse nici în destinație. Singurul lucru care funcționează este atunci când există un fișier într-un director, spunem ~/bin2/file1
și acest fișier este șters, apoi acest fișier este șters și în destinație (dar nu în cazul în care directorul ~/bin2/
este eliminat cu totul).
Evident, această problemă este creată de extinderea shell-ului /home/my_user/bin*
la toate numele de fișiere și directoare începând cu cos
in al meu $HOME
directorul la momentul în care rsync
comanda este executată. Deci, am încercat să citez sursa ca „/home/my_user/bin*”
, dar în acest caz primesc eroarea:
rsync: [sender] link_stat „/home/my_user/bin*” a eșuat: nu există un astfel de fișier sau director (2)
Ce opțiuni sunt necesare, deci, pot folosi wildcard-uri pentru sursă(e) și voi avea replica exactă a fișierului sursă și a structurii directorului, tot în destinație?
Notă: rsync versiunea 3.2.3 protocol versiunea 31