Jak Kopírovat Soubory a Adresáře v Linuxu
Kopírování souborů a adresářů je jedním z nejčastějších úkolů budete provádět při práci na příkazový řádek. Existuje několik příkazů pro kopírování souborů v Linuxu, s cp
rsync
je nejvíce široce používané nástroje.
je běžnou praxí používat příkaz cp
pro kopírování souborů a rsync
pro kopírování adresářů.
abyste mohli kopírovat soubory a adresáře, musíte mít alespoň oprávnění ke čtení zdrojového souboru a oprávnění k zápisu do cílového adresáře.
kopírování souborů příkazem cp #
v operačních systémech Linux a Unix se příkaz cp
používá pro kopírování souborů a adresářů.
nejjednodušší případ použití je zkopírovat soubor do aktuálního pracovního adresáře. Například zkopírovat soubor s názvem file.txt
do souboru s názvem file_backup.txt
v aktuálním adresáři, spusťte následující příkaz:
cp file.txt file_backup.txt
pokud cílový soubor existuje, bude přepsán. Chcete – li získat výzvu k potvrzení před přepsáním souborů, použijte volbu -i
.
cp -i file.txt file_backup.txt
ve výchozím nastavení, při použití cp
příkaz pro kopírování souboru, nový soubor bude ve vlastnictví uživatele provádění příkazu. Pomocí -p
možnost zachovat režim souboru, vlastnictví, časová razítka:
cp -p file.txt file_backup.txt
Další možností, které mohou být užitečné, je -v
. Při použití této možnosti, příkaz vytiskne to, co se děje:
cp -v file.txt file_backup.txt
'file.txt' -> 'file_backup.txt'
Kopírovat soubor do adresáře #
Chcete-li zkopírovat soubor do adresáře, zadejte absolutní nebo relativní cestu k adresáři. Když je cílový adresář vynechán, soubor je zkopírován do aktuálního adresáře.
V následujícím příkladu jsme kopírování souboru file.txt
/backup
adresář:
cp file.txt /backup
při zadávání pouze názvu adresáře jako cíle bude mít zkopírovaný soubor stejný název jako původní soubor.
Pokud chcete zkopírovat soubor pod jiným názvem, musíte zadat požadovaný název souboru:
cp file.txt /backup/new_file.txt
výše uvedený příkaz bude zkopírujte soubor do zadaného adresáře jako new_file.txt
.
Kopírování více souborů #
kopírovat více souborů a adresářů najednou, zadejte jména zdrojových souborů a adresářů následoval cílového adresáře jako poslední argument:
cp file.txt dir file1.txt file2.txt dir1
při kopírování více souborů musí být cíl adresářem.
příkaz cp
také umožňuje použít porovnávání vzorů. Například, pokud chcete zkopírovat všechny .png
soubory z aktuálního adresáře do /backup
adresář, měli byste použít:
cp *.png /backup
Kopírování Adresáře s cp Příkaz #
kopírovat adresáře, včetně všech jeho souborů a podadresářů, pomocí -R
nebo -r
možnost. V následujícím příkladu budeme kopírovat adresář Pictures
Pictures_backup
:
cp -R Pictures Pictures_backup
výše uvedený příkaz vytvoří cílový adresář a rekurzivně kopírovat všechny soubory a podadresáře ze zdrojového do cílového adresáře.
pokud cílový adresář již existuje, samotný zdrojový adresář a jeho obsah se zkopírují do cílového adresáře. Chcete-li kopírovat pouze soubory a podadresáře, ale ne cílový adresář, použijte volbu -T
:
cp -RT Pictures Pictures_backup
možnosti použité při kopírování souborů lze také použít při kopírování adresářů. Hlavní rozdíl spočívá v tom, že při kopírování adresářů musíte použít volbu -R
.
Kopírování Souborů a Adresářů s rsync Příkaz #
rsync
je rychlý a všestranný příkazového řádku-nástroj, který synchronizuje soubory a adresáře mezi dvěma místy. Může být použit ke kopírování souborů do místních a vzdálených míst.
rsync
obsahuje mnoho možností, které řídí každý aspekt jeho chování,
nejvíce užitečná volba je -a
rekurzivní kopírování adresářů, přenos a speciální bloková zařízení a zachovat symbolické odkazy, časy modifikace, skupiny, vlastnictví a oprávnění.
Chcete-li zkopírovat jeden soubor z jednoho do jiného umístění, měli byste spustit následující příkaz:
rsync -a file.txt file_backup.txt
Pokud cílový soubor existuje, rsync
přepíše.
stejný příkaz lze použít ke kopírování adresáře:
rsync -a /var/www/public_html/ /var/www/public_html_backup/
rsync
hrozby zdroj adresáře, které konce koncové lomítko /
jinak. Pokud do zdrojového adresáře přidáte koncové lomítko, příkaz zkopíruje do cílového adresáře pouze obsah zdrojového adresáře. Když je koncové lomítko vynecháno, rsync
zkopíruje zdrojový adresář uvnitř cílového adresáře. Nejbezpečnější možností je vždy zahrnout koncové lomítko /
na cíl i zdroj.
dozvědět Se více o rsync
podívejte se na následující články:
- Jak Používat Rsync pro Místní a Dálkový Přenos Dat a Synchronizace
- Jak Vyloučit Soubory a Adresáře s Rsync
Závěr #
Jsme vám ukázali, jak kopírovat soubory a adresáře v Linuxu a Unix-založené systémy, pomocí cp
rsync
nástroje.
Leave a Reply