Näytämme sinulle, kuinka voit sulkea pois tiedoston tai hakemiston rsync-sovelluksessa käyttämällä erilaisia esimerkkejä. Tässä esitetyt esimerkit on testattu Ubuntu 20: ssä.04 LTS, nämä pätevät kuitenkin myös muihin Linux-jakeluihin, joihin on asennettu rsync.
Sulje pois tietty tiedosto
Hakemistoa synkronoitaessa kannattaa ehkä sulkea pois tietty tiedosto, joka sijaitsee sen sisällä. Voit tehdä sen käyttämällä -poissulkemisvaihtoehtoa ja sen jälkeen pilkkuna suljettua tiedostonimeä.
Komennon syntaksin tulee olla:
$ rsync -a --poissulkea 'tiedostonimi' lähdekansio / kohde_hakemisto /Tässä, a vaihtoehtoa käytetään rekursiiviseen synkronointiin.
Esimerkiksi, jos haluat sulkea pois tiedoston nimeltä näyte.txt lähteestä synkronoitaessa src_dir ja dest_dir, komento olisi:
$ rsync -a --poissulje 'näyte.txt 'src_dir / dest_dir /
Sulje pois tietty hakemisto
Jos haluat sulkea tietyn hakemiston (mukaan lukien sen alihakemistot) lähteestä synkronoitaessa lähde- ja kohdehakemistoja, käytä seuraavaa syntaksia:
$ rsync -a - poissulkee hakemiston_nimi src_dir / dest_dir /Esimerkiksi poistaaksesi hakemiston nimeltä samplingir synkronoitaessa src_dir ja dest_dir, komento olisi:
$ rsync -a - poissulkee 'sampledir' src_dir / dest_dir /
Jos haluat sulkea pois hakemiston sisällön mutta et itse hakemistoa, käytä hakemiston nimeä ja sen jälkeen / *:
$ rsync -a - poissulkee 'sampledir / *' src_dir / dest_dir /Yllä oleva komento kopioi hakemiston vain määränpäähän, mutta ei sen sisältöä.
Sulje pois useita tiedostoja tai hakemistoja
Jos haluat sulkea pois useita tiedostoja tai hakemistoja synkronointiprosessin aikana, määritä kukin niistä seuraavasti:
$ rsync -a --poissulkea 'tiedostonimi' --poissulkea 'hakemisto1 --poissulkea' hakemisto2 'src_dir / dest_dir /
Määrittelyn sijasta -sulkea pois vaihtoehto erikseen jokaiselle tiedostolle tai hakemistolle, voit käyttää yhtä -sulkea pois -vaihtoehto määrittämällä kaikki tiedostot tai hakemistot sulkeissa.
$ rsync -a --exclude = 'tiedoston_nimi', 'hakemisto1', 'hakemisto2' src_dir / dest_dir /
Toinen vaihtoehto sulkea pois useita tiedostoja tai hakemistoja on luetteloida ne tiedostoon ja välittää tiedostonimi sitten -sulkea pois vaihtoehto:
$ rsync -a --exclude-listasta src_dir / dest_dir /Tässä "lista" sisältää tiedoston ja hakemistojen nimen, jotka haluamme sulkea pois. Tämä komento synkronoi src_dir osoitteen dest_dir kanssa sulkemalla pois tiedostot ja hakemistot, jotka mainitaan ”list” -tiedostossa.
Sulje pois mallit tai hakemistot, jotka vastaavat mallia
Rsyncin avulla voit myös sulkea pois tiedostoja tai hakemistoja, jotka vastaavat tiettyä mallia. Esimerkiksi hakemistoa synkronoitaessa kannattaa ehkä sulkea pois kaikki a: lla päättyvät tiedostot .txt laajennus. Komento olisi tässä tapauksessa seuraava:
$ rsync -a --poissulje '*.txt 'src_dir / dest_dir /
Sulje tiedosto koon mukaan
Rsyncin avulla voit jättää tiedostot pois niiden vähimmäis- tai enimmäiskoon perusteella. Täällä emme käytä -exclude -vaihtoehtoa, mutta -max-size =
Tässä on luettelo meidän src_dir joka näyttää tiedostojen nimet ja niiden koot megatavuina.
Oletetaan, että haluamme synkronoida kaikki tiedostot dest_dir-tiedostoon paitsi ne, joiden koko on suurempi kuin 100 Mt. Tässä tapauksessa komento olisi:
$ rsync -av --max-size = 100m src_dir / dest_dir /
Vastaavasti, jos haluat sulkea pois tiedostot, jotka ovat pienempiä kuin tietty koko, sanotaan 50 Mt, komento olisi:
$ rsync -av --min-size = 50m src_dir / dest_dir /Johtopäätös
Siinä kaikki siinä on! Tässä viestissä olemme keskustelleet erilaisista esimerkeistä tiedoston tai hakemiston poissulkemiseksi rsyncissä. Olemme osoittaneet, kuinka yksi tiedosto tai hakemisto, useita tiedostoja ja hakemistoja, tietyn mallin mukaiset tiedostot ja tiedostot suljetaan pois niiden vähimmäis- / enimmäiskoon perusteella.