GNU/Linux >> Znalost Linux >  >> Linux

Jak kopírovat soubory a adresáře v terminálu Linux

Duplikování a kopírování dokumentů a registrů je dost možná nejrozšířenější a běžně používanou úlohou, kterou budete provádět při práci s příkazovým řádkem Linuxu. V Linuxu existuje několik příkazů k duplikování dokumentů, nejznámější jsou příkazy cp a rsync.

Většina uživatelů Linuxu často používá a používá příkaz cp při kopírování souborů a příkaz rsync při kopírování adresářů.

Než začnete

Abyste mohli kopírovat soubory a adresáře, musíte mít alespoň oprávnění ke čtení zdrojových souborů a oprávnění k zápisu do cílových adresářů.

Kopírování souborů pomocí příkazu cp

Příkaz cp je nástroj příkazového řádku pro kopírování souborů a adresářů v systému Linux z jednoho umístění do druhého na stejném počítači.

Nejjednodušším případem použití je kopírování souborů v aktuálním pracovním adresáři. Chcete-li například zkopírovat soubor s názvem file.txt v aktuálním adresáři jako file_backup.txt, spusťte následující příkaz:

cp file.txt file_backup.txt 

Pokud cílový soubor existuje, budou přepsány soubory se stejným názvem a příponou. Chcete-li požádat o potvrzení, použijte možnosti -i .

cp -i file.txt file_backup.txt 

Při použití příkazu cp ke kopírování souborů budou nové soubory ve vlastnictví uživatele provádějícího příkaz. Použijte volbu -p pro zachování režimu souboru, vlastnictví a časových razítek:

cp -p file.txt file_backup.txt 

Další možností, která by mohla být užitečná, je -v . Při použití této možnosti příkaz vypíše, co se právě dělá:

cp -v file.txt file_backup.txt 
'file.txt' -> 'file_backup.txt' 

Kopírovat soubory do jiného adresáře

Chcete-li zkopírovat soubor do jiného adresáře, musíte zadat absolutní nebo relativní cestu k cílovému adresáři. V následujícím příkladu zkopírujeme soubor file.txt do adresáře /backup :

cp file.txt /backup 

Pokud jako cíl zadáte pouze název adresáře, bude mít zkopírovaný soubor stejný název jako původní soubor.

Pokud chcete zkopírovat soubor s jiným názvem, musíte zadat požadovaný název souboru:

cp file.txt /backup/file_baru.txt 

Výše uvedený příkaz zkopíruje soubor do adresáře zadaného jako file_baru.txt .

Kopírovat více souborů

Je také možné kopírovat více souborů najednou zadáním názvů souborů následovaných cílovým adresářem:

cp file.txt file1.txt file2.txt directory 

Při kopírování více souborů musí být cílem adresář.

Příkaz cp také umožňuje používat porovnávání vzorů. Chcete-li například zkopírovat všechny soubory png z aktuálního adresáře do adresáře /backup které budete používat:

cp *.png /backup 

Jak zkopírovat adresář v Linuxu pomocí příkazu cp

Chcete-li zkopírovat adresář, včetně všech souborů a podadresářů, použijte volbu -R. V následujícím příkladu zkopírujeme adresář ~/Pictures do adresáře ~/Pictures_backup :

cp -R Pictures Pictures_backup 

Výše uvedený příkaz vytvoří cílový adresář a rekurzivně zkopíruje všechny soubory a podadresáře ze zdrojového do cílového adresáře.

Možnosti používané při kopírování souborů lze využít i při kopírování adresářů. Hlavní rozdíl je v tom, že při kopírování adresářů musíte použít volby -R .

Jak zkopírovat soubory a adresáře v systému Linux pomocí příkazu rsync

Rsync je rychlý a všestranný nástroj příkazového řádku. Rsync synchronizuje soubory a adresáře mezi dvěma umístěními. Rsync lze použít ke kopírování souborů do místního nebo vzdáleného umístění.

Rsync poskytuje řadu možností, které řídí každý aspekt jeho chování. Nejpoužívanější možnosti jsou -a který bude rekurzivně kopírovat adresáře, přenášet vlastní zařízení a blokovat, zachovávat symbolické odkazy, časy úprav, skupiny, vlastnictví a oprávnění k souborům.

Chcete-li zkopírovat jeden soubor z jednoho umístění do druhého, můžete použít následující příkaz:

rsync -a file.txt file_backup.txt 

Pokud cílový soubor existuje, rsync jej přepíše.

Ke kopírování adresářů pomocí rsync:

můžete použít stejný příkaz jako výše
rsync -a / var / www / public_html / / var / www / public_html_backup / 

Všimněte si, že Rsync bere v úvahu lomítka / na konci zdroje s jiným pojetím. Pokud do zdrojového adresáře přidáte koncové lomítko, zkopíruje se pouze obsah adresář do cílového adresáře. Po odstranění koncového lomítka rsync zkopíruje adresář zdroj do cílového adresáře.

Závěr

V této příručce jsme se naučili, jak kopírovat soubory a adresáře v systémech založených na Linuxu a Unixu pomocí nástrojů cp a rsync.

Jak nainstalovat a nakonfigurovat Mono na Rocky Linux 8 a CentOS 8


Linux
  1. Jak odstranit soubory a adresáře v Linuxu z příkazového řádku

  2. Jak extrahovat soubory .gz a .tar.gz v Linuxu

  3. Jak kopírovat / přesouvat soubory a adresáře v Linuxu pomocí příkazů „cp“ a „mv“.

  1. Zkopírujte soubory v terminálu Linux

  2. Jak kopírovat soubory a adresáře v Linuxu

  3. Snadný způsob, jak skrýt soubory a adresáře v Linuxu

  1. Jak zkopírovat soubor do více adresářů v Linuxu

  2. Jak přejmenovat soubory a adresáře v Linuxu

  3. Příkaz Ls v Linuxu (seznam souborů a adresářů)