cp je základní příkaz v Linuxu pro kopírování souborů, stejně jako copy ve Windows. Ostatně je zkratka právě z oné delší verze.
Funguje klasicky, tedy napíšete cp odkud kam a systém vytvoří kopii. V odkud je možné uvádět jméns souborů ale používat i zástupné znaky (* a ?) pro výběr více souborů. Pozor na to, že skryté soubory (ty co začínají tečkou) to bude ignorovat.
Vtip s tečkovanými soubory je, že
- cp -a zdroj/* cil/ # nekopíruje je
- cp -a zdroj/. cil/ # je kopíruje
- cp cp -a zdroj cil/ # je kopíruje
Základní příklady použití
Základní kopie jednoho souboru
cp foto.jpg /mnt/usb/
Více souborů do adresáře (ano, jako zdroj jde uvádět víc věcí, cíl je pak ten poslední)
cp *.png *.jpg /mnt/usb/obrazky/
Kopie včetně skrytých souborů (nepoužívat hvězdičku)
cp -a projekt/. /mnt/backup/projekt/

TIP: Chcete návod? V Linuxu prostě zkustei man cp. Na webu třeba v cp(1) — Linux manual page
Kopírování složek
Umí kopírovat i složky (tedy jejich obsah), ale tam musíte použít -r jako parametr. Tedy něco jako cp -r vychozislozka/ cilovaslozka/
MImochodem, místo -r se doporučuje používat -R.
Hodit se alespíše může -a (-dR –preserve=all) což je kombinace rekurze (tedy obsahu složek) a zachování práv, vlastníka, časů, symlinků, ACL, xattr atd
Rekurzivní kopie adresáře (doporučeně -a)
cp -a projekt/ /mnt/backup/
Aby toho nebylo málo, tak je tu ještě –parents, které v cíli vytvoří i cestu. Tedy tu původní cestu ke zdroji, pro názornost:
cp –parents a/b/c.txt /backup/ → /backup/a/b/c.txt (tedy v /backup vytvoří ony složky)
Zachovat cestu (parents)
cp –parents src/app/config.yaml /backup/
“Synchronizace” pouze nových/novějších souborů
cp se v základní podobě dá použít pro zálohování/synchronizaci, ale tam je vhodné využít -u. Zajistí, že se budou kopírovat pouze novější soubory+ty co v cíli chybí a ne tedy vše co ve výchozí složce máte. Pochopitelně tedy v kombinaci jako -ru
Kopie pouze novějších souborů (rychlé „přisypání“)
cp -a -u zdroj/ cil/
TIP: pokud chcete opravdu synchronizovat, naučte se používat rsync
Ochrana proti blbosti
cp prostě spustíte a ono kopíruje a klidně přepíše cokoliv, co v cílovém místě je a nebude se na nic ptát. Pokud chcete aby se ptalo, použijte -i (interaktivně).
Užitečné je -n (no-clobber) které zajistí, že pokud v cíli už soubor existuje, nepřepíše ho. Opak je -f (force) s vynuceným přepsáním.
Bezpečně – nepřepisuj existující
cp -a -n zdroj/ cil/
Šikovné je -b (–backup) kde případné přepsání vytvoří zároveň zálohu. Původní jméno souboru doplněné o příponu (tu lze určit pomocí –suffix)
Při přepisu dělej zálohu s příponou .bak
cp -a –backup –suffix=.bak zdroj.cfg /etc/zdroj.cfg
Podrobně vidět co se děje
Podobně užitečné je -v (verbose) kde probíhající cp bude vypisovat co kopíruje (odkud kam).
Včetně atributů
Pokud chcete aby v cílovém podobě byly zachovány atributy (vlastnosti), tak použijte -p. Bez přidání budou mít kopie nový timestamp, vlastníka i mode podle toho kam kopírujete. S -p timestamp zůstane. Pro zachování vlastnictví bude třeba spouštět přes sudo (či jiný odpovídající spůsob)
Symlinky
Také dost důležité:
- -d (kopíruj symlinky jako symlinky)
- -L (následuj symlinky)
- -P (nenásleduj).
Jde i nevytvářet kopie, ale vytvořit symlinky s pomocí -l (hardlinky), -s (symlinky). Což vám ale neudělá duplikát (kopii) ale jen “odkaz” na originál.
Další tipy týkající se Linuxu (a podobných věcí)
-
TIP#2159: Co je to sideloading?
Když už se teď hodně píše a mluví o tom, že EU přinutí Apple k “sideloading”, tak je vhodný čas si tento termín vysvětlit. Týká se to zejména Apple, protože sideloading blokuje,…
-
TIP#2150: Proč vám po instalaci nestartuje Ubuntu. a jak dostat Windows do Grubu po instalaci Ubuntu na jiný disk.
Máte počítač kde “C:” je Windows a k tomu je tam nějaký další disk (v mém případě dokonce dva, D: a F:). Na ten jste nainstalovali Ubuntu (boot USB klíčenky na kterou…
-
TIP#2141: Jak si pro Mac OS pořídit (zpět) nano editor a Python
Možná jste to zaregistrovali. Po aktualizaci (od 12.3 výše) se místo nano spouští pico. Apple neznámo proč nano dali pryč a přes symlink v /usr/bin/nano spouštějí pico. Související příspěvky TIP#951: Pomohou mi…
-
TIP#2133: Vkládat (nejen) obrázky můžete i přes Copy/paste (Ctrl+C/Ctrl+V). Naučte se to
Nosit dříví do lesa, to 365tipů občas dělá. Vysvětlováním něčeho co “přece ví každý”. Jenže, letitá zkušenost je, že je spousta věcí, které lidé neví. A tohle je právě ta jedna z…
-
TIP#2107: Jak stahovat hudbu z YouTube
Jak stahovat videa z YouTube jsme tu už řešili v Jak stáhnout video z Facebooku, YouTube, Instagramu a dalších webů? a Jak stáhnout z YouTube video? Není to na počítačích až tak…
-
TIP#2095: Jak v Ubuntu zvětšit písmo v Grub, boot manageru? A jak nastavit jinou výchozí volbu
Pokud jste si čirou náhodou nainstalovali na počítač (notebook) Ubuntu a Windows současně, tak po zapnutí uvidíte jako první výběr systému pro spuštění v sofware co se jmenuje grub. Související příspěvky TIP#729:…
-
TIP#2077: Mám si pořídit placený antivir? Stačí ty zdarma?
Antivir je povinná výbava pro Windows a rozhodně neuškodí to takto brát i pro Mac OS. Pro Linux je to s otazníky, ale když už ne povinně, tak se tam alespoň hodí.…
-
TIP#2039: Jak na Mac OS (Linuxu i Windows) převést QuickTime (MOV) na MP4?
Tyhle věci stále Apple strašně neochotně řeší. Záznam obrazovky ukládá video jako QuickTime, takže pokud ho chcete použít kdekoliv jinde, tak ho musíte převést na MP4. Což QuickTime aplikace prostě neumí. Uměla…
-
TIP#2025: Máte Windows 10/11 a Ubuntu přes Dual Boot a ztrácí se v Ubuntu WiFi adaptér? Jak ve Windows zakázat Fast Boot (rychlé spuštění)
Tohle je vtipná zapeklitost minimálně pro Intel Wi-Fi adaptér v notebooku ASUS. kde je Windows 10/11 a Ubuntu přes DualBoot. Po spuštění Ubuntu se vám neaktivuje WiFi adaptér, ačkoliv předtím bez problémů…
-
TIP#2012: Jak z Ubuntu odinstalovat/odstranit nějakou aplikaci/software
Při nedávném zkoumání toho jak vzdáleně přistupovat na Ubuntu jsme si do Ubuntu nainstalovat Chrome Remote Desktop – instalace je přes .deb balíček a nikde v Ubuntu nenajdete viditelnou odinstalaci. Takže je…
-
TIP#1994: Co je to about:blank, proč se mi to v prohlížeči ukazuje a jak se nastaví domácí stránka v prohlížeči
about:blank je označení pro prázdnou stránku v prohlížečích. Funguje v adresním řádku a je to užitečné výchozí nastavení pro domácí/startovací stránku prohlížeče. Tedy pokud si nechcete z nějakého důvodu nastavit něco jiného. …
-
TIP#1969: Jak stáhnout a nainstalovat Google Chrome
Z jedné strany tak trochu nadbytečný tip, tohle přece je snadné a každý to musí vědět. Jenže přesně tímto způsobem to nefunguje. Ne každý ví, jak si do počítače pořídit Google Chrome. …
-
TIP#1960: Jak zjistím co mám za Linux/MacOS a jakou verzi?
Potřebujete zjisti co máte za Linux (Mac OS) a navíc ještě jakou verzi? Nejsnazší je to z příkazové řádky, tedy terminalu (shellu). Související příspěvky TIP#951: Pomohou mi při práci na počítači nějak…
-
TIP#1925: Co je to Seznam četby/Reading list v Chrome a jak se zbavit zbytečné položky v liště
Možná jste si všimli, že se vám v liště záložek v Chrome náhle zcela vpravo objevil Seznam četby. Nadělila vám to tam některá z posledních aktualizací, co se neptala, jestli něco takového…
-
TIP#1908: Jak synchronizovat otevřené záložky mezi různými prohlížeči (a počítači)
Používám Chrome hlavně pro možnost používat desítky samostatných profilů a běžně mám otevřených pět Chrome, každý z nich „nad“ jiným projektem. Stejné profily mám na počítači i na notebooku a každý z…

















