Izvršili smo naredbe i primjere spomenute u ovom članku na sustavu Debian 10 Buster, ali možete ih replicirati na gotovo svim Linux distribucijama.
Linuksovom naredbenom retku, Terminalu, lako se može pristupiti putem Aplikacije. Pretraživanje pokretača na sljedeći način:
Primjer 1: Kopiranje jedne datoteke u ciljni direktorij
Najjednostavnija uporaba naredbe cp je kopiranje jedne izvorne datoteke u ciljni direktorij. Evo sintakse koju možete koristiti za to:
$ cp izvorna datoteka / cilj / direktorijPrimjer:
U ovom primjeru kopiram datoteku nazvanu sample_file.txt u moju mapu Dokumenti:
Kasnije sam provjerio prisutnost datoteke u ciljnoj mapi pomoću naredbe ls.
Primjer 2: Kopiranje više datoteka u ciljni direktorij
Pomoću naredbe cp možete kopirati više datoteka u ciljni direktorij pomoću sljedeće sintakse:
$ cp sourcefile1 sourcefile2 sourcefile3… / target / direktorijPrimjer:
U ovom primjeru kopiram dvije uzorke datoteka u mapu Dokumenti putem naredbe cp:
Kasnije sam provjerio prisutnost tih datoteka u ciljnoj mapi pomoću naredbe ls.
Primjer 3: Kopiranje datoteka na interaktivan način
Ako datoteka s istim imenom postoji u vašoj ciljnoj mapi, možete upotrijebiti cp naredbu da vas zatraži prije prepisivanja ciljne datoteke. Prekidač -i možete koristiti na sljedeći način:
$ cp -i izvorna datoteka / cilj / direktorijPrimjer:
U ovom primjeru datoteka s nazivom sample_file.txt već postoji u mojoj mapi Dokumenti, pa me naredba cp, sa zastavicom -i, pita ako ga želim prebrisati. Datoteka će biti prepisana ako unesem y na ovaj upit.
Primjer 4: Kopiranje datoteka zajedno s detaljnim izlazom
Detaljni izlaz ispisuje ono što naredba radi. To se može uključiti u naredbu cp s prekidačem -v kako slijedi:
$ cp -v izvorna datoteka / cilj / direktorijPrimjer:
U sljedećem primjeru možete vidjeti kako naredba cp ispisuje detaljni izlaz tijekom kopiranja naredbe:
Primjer 5: Rekurzivno kopiranje direktorija
Korištenje opcije -r s naredbom cp rekurzivno kopira sve datoteke i mape u direktoriju na drugo mjesto. Evo kako možete koristiti naredbu cp u ovom scenariju:
$ cp -r direktorij1 direktorij2Primjer:
U sljedećem primjeru cijela mapa 1 sa svim datotekama kopirat će se u mapu2.
Kasnije sam provjerio sadržaj folder2 putem naredbe ls. Mapa 2 sadrzi kopiju izvorne mape.
Primjer 6: Rekurzivno kopiranje direktorija uz zadržavanje arhive
Korištenjem prekidača -a s naredbom cp možete odjednom učiniti dvije stvari:
- Rekurzivno kopirajte datoteke direktorija u drugi direktorij
- Tijekom kopiranja datoteka držite dozvole, vremensku oznaku, simboličke poveznice i sva takva svojstva netaknutima.
Evo kako možete koristiti naredbu cp u ovom scenariju:
$ cp -a direktorij1 direktorij2Primjer:
U sljedećem primjeru, cijela mapa 1, sa svim datotekama, kopirat će se u mapu2. Također, datoteke će se arhivirati kao što je kasnije provjereno putem naredbe 'ls -l'.
Primjer 7: Kopirajte datoteku u slučaju da je novija od ciljne datoteke
Ponekad želite kopirati datoteku u ciljni direktorij samo ako je novija od ciljne datoteke. To se može učiniti pomoću prekidača -u s naredbom cp:
$ cp -u izvorna datotekaORsourcedirectory / target / direktorijPrimjer:
U ovom sam primjeru uredio datoteku sample_file.txt iz moje izvorne mape. Te su datoteke već kopirane u ciljnu mapu prije nego što sam uredio datoteku. To se može vidjeti u sljedećem izlazu naredbe 'ls -l':
Sada, kad sam kopirao izvornu mapu u ciljnu mapu, detaljni izlaz potvrdio je da će se kopirati samo ona datoteka koju sam ja uredio.
Primjer 8: Kopirajte datoteku, ali nemojte je prepisivati ako ciljna datoteka već postoji
Možete narediti cp da ne prepisuje datoteku ako već postoji na ciljnom mjestu. To se može učiniti pomoću prekidača -n na sljedeći način:
$ cp -n izvorna datoteka / cilj / direktorijPrimjer:
U ovom sam primjeru prvo pokušao kopirati datoteku na ciljno mjesto gdje već postoji. Prekidač -i zatražio me ako ga želim prebrisati.
U drugu naredbu dodao sam prekidač -n. Ignorirao je prekidač -i, ali nije prepisao već postojeću datoteku u ciljnom direktoriju.
Primjer 9: Stvorite simboličku vezu do datoteke u ciljnom direktoriju
Prekidačem -s u naredbi cp možete stvoriti simboličku vezu do izvorne datoteke u ciljnoj mapi umjesto kopiranja izvorne datoteke.
$ cp -s izvorna datoteka / cilj / direktorijPrimjer:
U sljedećem primjeru stvorio sam simboličku vezu do datoteke sample_file.txt u ciljnoj mapi.
Kasnije sam provjerio prisutnost simboličke veze u ciljnoj mapi pomoću naredbe 'ls -l'.
Primjer 10: Stvorite čvrstu vezu do datoteke u ciljnom direktoriju
Kada stvorite čvrstu vezu do datoteke u drugoj mapi, datoteka se ne kopira u ciljnu mapu; umjesto toga stvara se tvrda veza do izvorne datoteke. Broj inode izvorne datoteke i kopirane tvrde veze jednak je. Evo kako stvoriti čvrstu vezu:
$ cp -l izvorna datoteka / cilj / direktorijPrimjer:
U ovom sam primjeru stvorio čvrstu vezu do izvorne datoteke u mapi Documents.
Kroz naredbu 'ls -il' provjerio sam da i originalna datoteka i tvrda veza imaju iste brojeve inode.
To je bilo sve što ste trebali znati da biste ovladali cp naredbom u Linuxu. Korištenjem kombinacije ovih preklopnika možete kopiranje datoteka učiniti puno prilagodljivijim.