Android

Tiedostojen ja hakemistojen poissulkeminen rsyncin avulla

30 Ultimate Windows 10 Tips and Tricks for 2020

30 Ultimate Windows 10 Tips and Tricks for 2020

Sisällysluettelo:

Anonim

Rsync on nopea ja monipuolinen komentorivi-apuohjelma, joka synkronoi tiedostot ja kansiot kahden sijainnin välillä etäkuoren yli.

Rsyncin avulla voit peilata tietoja, luoda lisävarmuuskopioita ja kopioida tiedostoja järjestelmien välillä. Kun kopioit tietoja, haluat ehkä sulkea pois yhden tai useamman tiedoston tai hakemiston nimen tai sijainnin perusteella.

Tässä opetusohjelmassa näytämme sinulle, kuinka poistaa tiedostoja ja hakemistoja rsyncin avulla.

Ennen kuin aloitat

Sinulla tulisi olla perustiedot rsyncin toiminnasta.

Seuraavissa esimerkeissä käytämme rsynciä -a vaihtoehdon kanssa. Tämä käskee rsyncin synkronoimaan hakemistot rekursiivisesti, siirtämään erityiset ja estävät laitteet ja säilyttämään symboliset linkit, muokkausajat, ryhmän, omistajuuden ja oikeudet.

Kun suljet pois tiedostoja tai hakemistoja, sinun on käytettävä niiden suhteellisia polkuja lähdehakemistoon.

Voit poistaa kaksi tiedostoa ja hakemistoa, jotka haluat poistaa:

  • Komentoriviltä käyttämällä --exclude-from vaihtoehtoa. Tiedostosta käyttämällä --exclude-from vaihtoehtoa.

Sulje pois tietty tiedosto

Jos haluat sulkea tietyn tiedoston pois, siirrä tiedoston suhteellinen polku --exclude vaihtoehtoon.

Seuraavassa esimerkissä tiedostoa src_directory/file.txt ei siirretä:

rsync -a --exclude 'file.txt' src_directory/ dst_directory/

Sulje pois tietty hakemisto

Tietyn hakemiston poissulkeminen on sama kuin tiedoston poissulkeminen, siirrä vain suhteellinen polku hakemistoon --exclude vaihtoehdolle, kuten alla on esitetty:

rsync -a --exclude 'dir1' src_directory/ dst_directory/

rsync -a --exclude 'dir1/*' src_directory/ dst_directory/

Sulje pois useita tiedostoja tai hakemistoja

Jos haluat sulkea pois useita tiedostoja tai hakemistoja, määritä vain useita - sulje pois -vaihtoehtoja:

rsync -a --exclude 'file1.txt' --exclude 'dir1/*' --exclude 'dir2' src_directory/ dst_directory/

rsync -a --exclude={'file1.txt', 'dir1/*', 'dir2'} src_directory/ dst_directory/

Jos poissuljettavien tiedostojen ja / tai hakemistojen lukumäärä on suuri, useiden - sulje pois -vaihtoehtojen käytön sijasta voit määrittää tiedostot ja hakemistot, jotka haluat sulkea pois tiedostosta, ja siirtää tiedoston tiedostoon - poissulkeminen - vaihtoehto.

Seuraava komento toimii täsmälleen samalla tavalla kuin yllä:

rsync -a --exclude-from='exclude-file.txt' src_directory/ dst_directory/ sulkea-file.txt

file1.txt dir1/* dir2

Sulje pois useita tiedostoja tai hakemistoja kuvion perusteella

Rsync -sovelluksella voit myös sulkea pois tiedostoja ja hakemistoja kuvion perusteella, joka vastaa tiedoston tai hakemiston nimeä.

Jos esimerkiksi haluat sulkea pois kaikki suoritettavat .jpg tiedostot:

rsync -a --exclude '*.jpg*' src_directory/ dst_directory/

On vähän vaikeampaa sulkea pois kaikki muut tiedostot ja hakemistot paitsi ne, jotka vastaavat tiettyä mallia. Oletetaan, että haluat sulkea pois kaikki muut tiedostot ja hakemistot paitsi tiedostot, jotka päättyvät .jpg tiedostoon.

Yksi vaihtoehto on käyttää seuraavaa komentoa:

rsync -a -m --include='*.jpg' --include='*/' --exclude='*' src_directory/ dst_directory/

Kun käytät useita sisällyttämis- / poissulkemisvaihtoehtoja, sovelletaan ensimmäistä vastaavuussääntöä.

  • --include='*.jpg' - Ensin sisällytetään kaikki .jpg tiedostot. --include='*/' - Sitten sisällytetään kaikki hakemistot src_directory hakemistoon. Ilman tätä rsync kopioi vain *.jpg tiedostot ylimmän tason hakemistoon. -m - Poistaa tyhjät hakemistot.

Toinen vaihtoehto olisi viedä find-komennon lähtö rsync: iin:

find src_directory/ -name "*.jpg" -printf %P\\0\\n | rsync -a --files-from=- src_directory/ dst_directory/

  • -printf %P\\0\\n - poistaa src_directory/ tiedostopolusta. --files-from=- - tarkoittaa, että vain tiedostot ovat vakiosyötteestä (tiedostot, jotka on siirretty etsimiskomennosta).

johtopäätös

Tässä opetusohjelmassa opit kuinka sulkea pois tiedostoja ja hakemistoja siirrettäessä tietoja Rsyncin kanssa. Rsyncistä on vielä paljon opittavaa Rsyncin käyttöoppaan sivulla.

rsync-pääte