Megmutatjuk, hogyan lehet kizárni egy fájlt vagy könyvtárat az rsync programban különböző példák segítségével. Az itt bemutatott példákat az Ubuntu 20-on teszteltük.04 LTS azonban ezek érvényesek más Linux disztribúciókra is, amelyeken rsync van telepítve.
Kizár egy adott fájlt
A könyvtár szinkronizálása során érdemes kizárni egy adott fájlt, amely abban található. Ezt megteheti az -exclude opcióval, amelyet a vesszőkkel bezárt fájlnév követ.
A parancs szintaxisa a következő lesz:
$ rsync -a - kizárja a "fájlnév" forrás_könyvtár / cél_könyvtár /Itt, a opciót használjuk a rekurzív szinkronizáláshoz.
Például egy fájl nevű fájl kizárására minta.txt a forrásból a szinkronizáláskor src_dir és dest_dir, a parancs a következő lenne:
$ rsync -a --exclude 'minta.txt 'src_dir / dest_dir /
Speciális könyvtár kizárása
Ha a forrás és a célkönyvtár szinkronizálásakor ki akar zárni egy adott könyvtárat (az alkönyvtárakat is beleértve), használja a következő szintaxist:
$ rsync -a - kizárja a 'könyvtárnév' src_dir / dest_dir /Például egy nevű könyvtár kizárására sampledir amikor a src_dir és dest_dir, a parancs a következő lenne:
$ rsync -a - kizárja a 'sampledir' src_dir / dest_dir /
Ha ki szeretné zárni a könyvtár tartalmát, de magát a könyvtárat nem, használja a könyvtár nevét, amelyet a / * követ:
$ rsync -a - kizárja a 'sampledir / *' src_dir / dest_dir /A fenti parancs csak a könyvtárat másolja a rendeltetési helyre, a tartalmát azonban nem.
Több fájl vagy könyvtár kizárása
Több fájl vagy könyvtár kizárásához a szinkronizálás során adja meg mindegyiket az alábbiak szerint:
$ rsync -a --kizárja a 'fájlnév' --kizárja 'könyvtár1 --kizárja' könyvtár2 'src_dir / dest_dir /
Meghatározás helyett -kizárni opciót külön-külön minden fájlhoz vagy könyvtárhoz, használhat egyet -kizárni opciót az összes fájl vagy könyvtár göndör zárójelben történő megadásával.
$ rsync -a --exclude = 'fájlnév', 'könyvtár1', 'könyvtár2' src_dir / dest_dir /
Egy másik lehetőség több fájl vagy könyvtár kizárására az, hogy felsorolja őket egy fájlba, majd továbbítja a fájlnevet a -kizár-ból választási lehetőség:
$ rsync -a --exclude-from 'list' src_dir / dest_dir /Itt a „lista” tartalmazza a kizárni kívánt fájl és könyvtár nevét. Ez a parancs szinkronizálja az src_dir-t a dest_dir-rel, miközben kizárja a „list” fájlban említett fájlokat és könyvtárakat.
Kihagyja a mintának megfelelő fájlokat vagy könyvtárakat
Az rsync használatával kizárhatja azokat a fájlokat vagy könyvtárakat is, amelyek megfelelnek egy adott mintának. Például egy könyvtár szinkronizálása során érdemes kizárni az összes a-val végződő fájlt .txt kiterjesztés. A parancs ebben az esetben a következő lenne:
$ rsync -a - kizárja '*.txt 'src_dir / dest_dir /
Zárjon ki egy fájlt méret szerint
Az rsync használatával kizárhatja a fájlokat a minimális vagy maximális méret alapján. Itt nem az -exclude opciót fogjuk használni, hanem a -max-size = értéket
Itt van a mi felsorolása src_dir amely a fájlneveket és méretüket MB-ban mutatja.
Tegyük fel, hogy az összes fájlt szinkronizálni akarjuk a dest_dir-rel, kivéve azokat, amelyek nagyobbak, mint 100 MB. Ebben az esetben a parancs a következő lenne:
$ rsync -av --max-size = 100m src_dir / dest_dir /
Hasonlóképpen, egy bizonyos méretnél kisebb - mondjuk 50 MB-os - fájlok kizárásához a parancs a következő lenne:
$ rsync -av --min-size = 50m src_dir / dest_dir /Következtetés
Ennyi van benne! Ebben a bejegyzésben különféle példákat tárgyaltunk egy fájl vagy könyvtár kizárására az rsync alkalmazásban. Megmutattuk, hogyan lehet kizárni egyetlen fájlt vagy könyvtárat, több fájlt és könyvtárat, egy adott mintának megfelelő fájlokat és a fájlokat a minimális / maximális méret alapján.