rsync

Hvordan ekskludere Directory Rsync?

Hvordan ekskludere Directory Rsync?
Rsync (står for ekstern synkronisering) er et veldig kraftig kommandolinjeverktøy for synkronisering av lokale og eksterne filer og kataloger. Den kommer forhåndsinstallert på de fleste Linux-distribusjoner. Det er et av de beste verktøyene for sikkerhetskopiering og oppbevaring av filer og kataloger på flere steder i synkronisering. Det beste med rsync er at det minimerer datamengden som kopieres til den eksterne plasseringen ved bare å kopiere dataene som er endret. Det er et annet flott trekk ved rsync som vi skal diskutere i dag; det ekskluderer filer eller kataloger fra synkronisering. Dette er ekstremt nyttig under sikkerhetskopier når du ikke vil kopiere en eller flere filer eller kataloger.

Vi viser deg hvordan du kan ekskludere en fil eller katalog i rsync ved hjelp av forskjellige eksempler. Eksemplene som presenteres her er testet på Ubuntu 20.04 LTS, men disse er også gyldige for andre Linux-distribusjoner som har rsync installert.

Ekskluder en bestemt fil

Mens du synkroniserer en katalog, kan det være lurt å ekskludere en bestemt fil i den. Du kan gjøre det ved å bruke alternativet -ekskludere etterfulgt av filnavnet som er vedlagt komma.

Syntaksen for kommandoen vil være:

$ rsync -a - ekskluder 'filnavn' kildekatalog / destinasjonskatalog /

Her, en alternativet brukes til rekursiv synkronisering.

For eksempel å ekskludere en fil med navnet prøve.tekst fra kilden når du synkroniserer src_dir og dest_dir, kommandoen ville være:

$ rsync -a - ekskluder 'prøve.txt 'src_dir / dest_dir /

Ekskluder en spesifikk katalog

For å ekskludere en bestemt katalog (inkludert underkataloger) fra kilden når du synkroniserer kilden og destinasjonskatalogene, bruker du følgende syntaks:

$ rsync -a - ekskluder 'katalognavn' src_dir / dest_dir /

For eksempel for å ekskludere en katalog som heter sampledir når du synkroniserer src_dir og dest_dir, kommandoen ville være:

$ rsync -a - ekskluder 'sampledir' src_dir / dest_dir /

Hvis du vil ekskludere innholdet i katalogen, men ikke selve katalogen, bruker du katalognavnet etterfulgt av / *:

$ rsync -a - ekskluder 'sampledir / *' src_dir / dest_dir /

Kommandoen ovenfor kopierer bare katalogen til destinasjonen, men ikke innholdet.

Ekskluder flere filer eller kataloger

For å ekskludere flere filer eller kataloger under synkroniseringsprosessen, spesifiser du hver av dem som følger:

$ rsync -a - ekskluder 'filnavn' - ekskluder 'katalog1 - ekskluder' katalog2 'src_dir / dest_dir /

I stedet for å spesifisere -utelukke alternativ for hver fil eller katalog, kan du bruke en enkelt -utelukke alternativet ved å spesifisere alle filene eller katalogene i krøllete parenteser.

$ rsync -a --exclude = 'filnavn', 'katalog1', 'katalog2' src_dir / dest_dir /

Et annet alternativ for å ekskludere flere filer eller kataloger er å føre dem opp i en fil og deretter sende filnavnet til -ekskluder-fra alternativ:

$ rsync -a - ekskludere fra 'liste' src_dir / dest_dir /

Her inneholder "listen" fil- og katalognavnet vi vil ekskludere. Denne kommandoen synkroniserer src_dir med dest_dir mens den ekskluderer filene og katalogene som er nevnt i "liste" -filen.

Ekskluder filer eller kataloger som samsvarer med et mønster

Med rsync kan du også ekskludere filer eller kataloger som samsvarer med et bestemt mønster. Når du for eksempel synkroniserer en katalog, kan det være lurt å ekskludere alle filer som slutter med a .tekst Utvidelse. Kommandoen, i dette tilfellet, vil være:

$ rsync -a - ekskluder '*.txt 'src_dir / dest_dir /

Ekskluder en fil etter størrelse

Med rsync kan du ekskludere filer basert på minimum eller maksimal størrelse. Her vil vi ikke bruke -exclude-alternativet, men -max-size = eller -min-størrelse == opsjoner basert på henholdsvis maksimum og minimumsstørrelse.

Her er listen over våre src_dir som viser filnavn sammen med størrelsene i MB.

La oss si at vi vil synkronisere alle filene til dest_dir bortsett fra de med en størrelse større enn 100 MB. I dette tilfellet vil kommandoen være:

$ rsync -av --max-size = 100m src_dir / dest_dir /

På samme måte, for å ekskludere filer som er mindre enn en bestemt størrelse, la oss si 50 MB, vil kommandoen være:

$ rsync -av --min-size = 50m src_dir / dest_dir /

Konklusjon

Det er alt det er til det! I dette innlegget har vi diskutert forskjellige eksempler for å ekskludere en fil eller en katalog i rsync. Vi har vist hvordan du ekskluderer en enkelt fil eller katalog, flere filer og kataloger, filer som samsvarer med et bestemt mønster, og filene basert på deres minimum / maksimale størrelse.

Hvordan øke FPS i Linux?
FPS står for Bilder per sekund. FPSs oppgave er å måle bildefrekvensen i videoavspilling eller spillprestasjoner. Med enkle ord betegnes antall uavbru...
Topp Oculus App Lab-spill
Hvis du er Oculus-hodesettinnehaver, må du være klar over sideloading. Sidelading er prosessen med å installere ikke-butikkinnhold på hodesettet. Side...
Topp 10 spill å spille på Ubuntu
Windows-plattformen har vært en av de dominerende plattformene for spill på grunn av den enorme andelen spill som utvikles i dag for å støtte Windows ...