Näitame teile, kuidas saate erinevate näidete abil rsyncis faili või kataloogi välistada. Siin toodud näiteid on testitud Ubuntu 20-ga.04 LTS kehtivad need aga ka teiste Linuxi distributsioonide puhul, kuhu on installitud rsync.
Spetsiifilise faili välistamine
Kataloogi sünkroonimise ajal võiksite selle konkreetse faili välja jätta. Seda saate teha, kasutades valikut -välista, millele järgneb komadega lisatud failinimi.
Käsu süntaks on järgmine:
$ rsync -a - välista 'faili_nimi' lähte_kataloog / sihtkoha_kataloog /Siin, a suvandit kasutatakse rekursiivseks sünkroonimiseks.
Näiteks nimelise faili välistamiseks proov.txt allikast sünkroonimisel src_dir ja dest_dir, käsk oleks:
$ rsync -a - välista 'proov.txt 'src_dir / dest_dir /
Spetsiifilise kataloogi välistamine
Kindla kataloogi (sh selle alamkataloogide) allikast väljajätmiseks allika ja sihtkataloogide sünkroonimisel kasutage järgmist süntaksit:
$ rsync -a - välista 'kataloogi_nimi' src_dir / dest_dir /Näiteks nimelise kataloogi välistamiseks samplingir faili sünkroonimisel src_dir ja dest_dir, käsk oleks:
$ rsync -a - välista 'sampledir' src_dir / dest_dir /
Kui soovite välja jätta kataloogi sisu, kuid mitte kataloogi ennast, kasutage kataloogi nime, millele järgneb / *:
$ rsync -a - välista 'sampledir / *' src_dir / dest_dir /Ülaltoodud käsk kopeerib kataloogi ainult sihtkohta, kuid mitte selle sisu.
Mitme faili või kataloogi välistamine
Mitme faili või kataloogi välistamiseks sünkroonimise käigus määrake igaüks neist järgmiselt:
$ rsync -a - välista 'faili_nimi' - välista 'kataloog1 - välista' kataloog2 'src_dir / dest_dir /
Täpsustamise asemel -välistada iga faili või kataloogi jaoks eraldi, võite kasutada ühte -välistada suvand, määrates kõik lokkisulgudes olevad failid või kataloogid.
$ rsync -a --exclude = 'failinimi', 'kataloog1', 'kataloog2' src_dir / dest_dir /
Veel üks võimalus mitme faili või kataloogi välistamiseks on nende loetlemine failis ja seejärel failinime edastamine -välja jätta võimalus:
$ rsync -a - välja arvatud loendist src_dir / dest_dir /Siin sisaldab loend faili ja kataloogide nime, mille soovime välistada. See käsk sünkroonib src_direkti dest_diriga, jättes välja failid ja kataloogid, mida mainitakse failis “loend”.
Välistage musteriga sobivad failid või kataloogid
Rsynci abil saate välistada ka failid või kataloogid, mis sobivad kindla mustriga. Näiteks võite kataloogi sünkroonimise ajal välistada kõik a-ga lõppevad failid .txt pikendamine. Sel juhul oleks käsk järgmine:
$ rsync -a - välista '*.txt 'src_dir / dest_dir /
Välista fail suuruse järgi
Rakendusega rsync saate failid välja jätta nende minimaalse või maksimaalse suuruse põhjal. Siin ei kasuta me valikut -välista, vaid -max-size =
Siin on meie nimekiri src_dir mis näitab failinimesid koos nende suurustega MB-des.
Oletame, et tahame sünkroonida kõik failid dest_diriga, välja arvatud need, mille suurus on suurem kui 100 MB. Sel juhul oleks käsk järgmine:
$ rsync -av --max-size = 100m src_dir / dest_dir /
Samamoodi oleks konkreetse suurusega (näiteks 50 MB) väiksemate failide välistamiseks käsk järgmine:
$ rsync -av - min-size = 50m src_dir / dest_dir /Järeldus
See on kõik, mis seal on! Selles postituses oleme arutanud erinevaid näiteid faili või kataloogi välistamiseks rsyncis. Oleme näidanud, kuidas välistada üks fail või kataloog, mitu faili ja kataloogi, failid, mis sobivad kindla mustriga, ja failid nende minimaalse / maksimaalse suuruse põhjal.