Ukaze in primere, omenjene v tem članku, smo zagnali v sistemu Debian 10 Buster, vendar jih lahko kopirate na skoraj vseh distribucijskih sistemih Linux.
Do ukazne vrstice Linuxa, terminala, je enostavno dostopati prek aplikacije. Iskanje po zaganjalniku na naslednji način:
Primer 1: Kopiranje ene datoteke v ciljni imenik
Najenostavnejša uporaba ukaza cp je kopiranje ene izvorne datoteke v ciljni imenik. Tu je sintaksa, s katero lahko to storite:
$ cp sourcefile / target / directoryPrimer:
V tem primeru kopiram datoteko z imenom sample_file.txt v mapo Moji dokumenti:
Kasneje sem z ukazom ls preveril prisotnost datoteke v ciljni mapi.
2. primer: Kopiranje več datotek v ciljni imenik
Z ukazom cp lahko kopirate več datotek v ciljni imenik z uporabo naslednje sintakse:
$ cp sourcefile1 sourcefile2 sourcefile3… / target / directoryPrimer:
V tem primeru preko ukaza cp kopiram dve vzorčni datoteki v mapo Dokumenti:
Kasneje sem z ukazom ls preveril prisotnost teh datotek v ciljni mapi.
3. primer: Kopiranje datotek na interaktiven način
Če v ciljni mapi obstaja datoteka z istim imenom, lahko z ukazom cp pozovete, preden prepišete ciljno datoteko. Stikalo -i lahko uporabite na naslednji način:
$ cp -i sourcefile / target / directoryPrimer:
V tem primeru datoteka z imenom sample_file.txt že obstaja v moji mapi Dokumenti, zato me ukaz cp z zastavico -i pozove, če ga želim prepisati. Datoteka bo prepisana, če ob tem pozivu vnesem y.
Primer 4: Kopiranje datotek skupaj z izčrpnim izhodom
Podroben izpis natisne, kaj počne ukaz. To lahko vključite v ukaz cp s stikalom -v, kot sledi:
$ cp -v izvorna datoteka / cilj / imenikPrimer:
V naslednjem primeru lahko vidite, kako ukaz cp med kopiranjem ukaza natisne podroben izhod:
Primer 5: Rekurzivno kopiranje imenika
Uporaba možnosti -r z ukazom cp rekurzivno kopira vse datoteke in mape v imeniku na drugo mesto. V tem primeru lahko uporabite ukaz cp:
$ cp -r imenik1 imenik2Primer:
V naslednjem primeru bo celotna mapa 1 z vsemi datotekami kopirana v mapo2.
Vsebino mape2 sem kasneje preveril z ukazom ls. Mapa2 zdaj vsebuje kopijo izvorne mape.
Primer 6: Rekurzivno kopiranje imenika, medtem ko hranite arhiv
S pomočjo stikala -a z ukazom cp lahko naredite dve stvari hkrati:
- Datoteke imenika kopirajte rekurzivno v drug imenik
- Med kopiranjem datotek ne pozabite na dovoljenja, časovni žig, simbolične povezave in vse take lastnosti.
V tem primeru lahko uporabite ukaz cp:
$ cp -imenik1 imenik2Primer:
V naslednjem primeru bo vsa mapa 1 z vsemi datotekami kopirana v mapo2. Datoteke bodo arhivirane, kot je bilo kasneje preverjeno z ukazom ls -l.
7. primer: Kopirajte datoteko, če je novejša od ciljne datoteke
Včasih želite kopirati datoteko v ciljni imenik le, če je novejša od ciljne datoteke. To lahko storite s pomočjo stikala -u z ukazom cp:
$ cp -u izvorna datotekaORsourcedirectory / target / directoryPrimer:
V tem primeru sem uredil datoteko sample_file.txt iz moje izvorne mape. Te datoteke so bile že kopirane v ciljno mapo, preden sem datoteko uredil. To je razvidno iz naslednjega izhoda ukaza 'ls -l':
Zdaj, ko sem kopiral izvorno mapo v ciljno mapo, je podroben izhod potrdil, da bo kopirana samo tista datoteka, ki sem jo uredil jaz.
Primer 8: Kopirajte datoteko, vendar je ne prepišite, če ciljna datoteka že obstaja
Ukazu cp lahko naročite, naj datoteke ne prepiše, če že obstaja na ciljnem mestu. To lahko storite s stikalom -n, kot sledi:
$ cp -n sourcefile / target / directoryPrimer:
V tem primeru sem najprej poskusil kopirati datoteko na ciljno mesto, kjer je že obstajala. Stikalo -i me je pozvalo, če ga želim prepisati.
V drugi ukaz sem dodal stikalo -n. Prezrl je stikalo -i, vendar ni prepisal že obstoječe datoteke v ciljnem imeniku.
Primer 9: Ustvarite simbolno povezavo do datoteke v ciljnem imeniku
S stikalom -s v ukazu cp lahko namesto kopiranja izvorne datoteke ustvarite simbolno povezavo do izvorne datoteke v ciljni mapi.
$ cp -s sourcefile / target / directoryPrimer:
V naslednjem primeru sem ustvaril simbolno povezavo do datoteke sample_file.txt v ciljni mapi.
Pozneje sem z ukazom ls -l preveril prisotnost simbolične povezave v ciljni mapi.
Primer 10: Ustvarite trdo povezavo do datoteke v ciljnem imeniku
Ko ustvarite trdo povezavo do datoteke v drugi mapi, se datoteka ne kopira v ciljno mapo; namesto tega se ustvari trda povezava do izvorne datoteke. Število inode izvorne datoteke in kopirane trde povezave je enako. Takole ustvarite trdo povezavo:
$ cp -l sourcefile / target / directoryPrimer:
V tem primeru sem ustvaril trdo povezavo do izvorne datoteke v mapi Dokumenti.
Z ukazom ls -il sem preveril, ali imata tako izvirna datoteka kot trda povezava enake številke inode.
To je bilo vse, kar ste morali vedeti, da bi obvladali ukaz cp v Linuxu. Z uporabo kombinacije teh preklopnikov lahko kopiranje datotek naredite veliko bolj prilagodljivo.