it-swarm-eu.dev

Rozdíl mezi cp -r a cp -a

Hledám rozdíl mezi cp -r a cp -a. Co znamená „rekurzivní“, pokud jde o kopírování souborů ze složky?

197
Randy

Rekurzivní znamená, že cp zkopíruje obsah adresářů a pokud adresář obsahuje podadresáře, zkopírují se (rekurzivně) také. Bez -R, příkaz cp přeskočí adresáře. -r je identické s -R v systému Linux se v některých případech Edge liší u některých dalších unixových variant.

Ve výchozím nastavení cp vytvoří nový soubor, který má stejný obsah jako starý soubor a stejná oprávnění, ale je omezen mask ; kopie je datována od času kopírování a patří uživateli, který kopii dělá. S -p možnost, kopie má stejný čas modifikace, stejný přístupový čas a stejná oprávnění jako originál. Má také stejného vlastníka a skupinu jako originál, pokud má uživatel vytvářející kopii oprávnění k vytváření takových souborů.

The -a volba znamená -R a -p, plus několik dalších možností uchování. Pokouší se vytvořit kopii co nejblíže původnímu: stejný adresářový strom, stejné typy souborů, stejný obsah, stejná metadata (časy, oprávnění, rozšířené atributy atd.).

Možnost -r nebo -R pro „rekurzivní“ znamená, že zkopíruje všechny soubory včetně souborů uvnitř podsložek.

Možnost -a uvedená v seznamu je stejná jako -dR, což znamená, že zachová odkazy a zkopíruje obsah podadresářů. Zachováním odkazů to znamená, že nebude následovat odkazy, protože rekurzivně kopíruje.

21
Joe