Uwusebenzisa njani Umyalelo we-cp ngokufanelekileyo kwiLinux [Imizekelo ye-14]
UMfutshane: Kwesi sikhokelo ekulula ukusilandela, sizakuxoxa ngemizekelo esebenzayo yomyalelo we-cp. Emva kokulandela esi sikhokelo, abasebenzisi baya kukwazi ukukopa iifayile kunye nezalathisi ngokulula kwiLinux usebenzisa ujongano lomgca womyalelo.
Njengabasebenzisi beLinux, sinxibelelana neefayile zokukopa kunye nezalathisi. Ngokuqinisekileyo, sinokusebenzisa umphathi wefayile yomzobo ukwenza umsebenzi wokukhuphela. Nangona kunjalo, uninzi lwabasebenzisi beLinux bakhetha ukusebenzisa umyalelo we-cp ngenxa yokulula kunye nokusebenza okutyebileyo.
Kwesi sikhokelo esinobuhlobo kwabaqalayo, siya kufunda malunga nomyalelo we-cp. Njengoko igama libonisa, umyalelo we-cp usetyenziselwa ukukopa iifayile kunye nabalawuli kwindlela enikiweyo.
Kuso sonke esi sikhokelo, siya kuqonda ukusetyenziswa komyalelo we-cp usebenzisa imizekelo ebonakalayo enokusetyenziswa imihla ngemihla.
Ngoko masiqalise.
Cp Command Syntax
Isivakalisi somyalelo we-cp siyafana neminye imiyalelo yeLinux. Kwinqanaba eliphezulu, yahlulwe yangamacandelo amabini - ukhetho kunye neengxabano:
$ cp [OPTIONS] <SOURCE> <DEST>
$ cp [OPTIONS] <SOURCE-1> <SOURCE-2> ... <DIRECTORY>
Kwisintaksi esingentla, izibiyeli ezisisikwere ([])
zimele iimpikiswano ezikhethwayo ngelixa izibiyeli ezizi-angular (<>)
zimele iingxoxo ezinyanzelekileyo.
1. Ukopisha njani iFayile kwiLinux
Olunye usetyenziso olusisiseko lomyalelo we-cp kukukhuphela ifayile kulawulo lwangoku. Amaxesha amaninzi abasebenzisi benza lo msebenzi ukuthatha i-backup yoqwalaselo olubalulekileyo.
Ngokomzekelo, sihlala sisenza ikopi yokugcina ifayile /etc/ssh/sshd_config ngaphambi kokuhlaziya uqwalaselo lwe-SSH.
Ukuqonda ukusetyenziswa, makhe senze ifayile elula:
$ touch file-1.txt
Okulandelayo, yenza ikopi yefayile usebenzisa lo myalelo ulandelayo:
$ cp file-1.txt file-2.txt

2. Bonisa iCopy Command Progress
Kumzekelo wangaphambili, sisebenzise umyalelo we-ls ukuqinisekisa ukuba umsebenzi wokukhuphela ifayile uphumelele na okanye hayi. Nangona kunjalo, akukho ngqiqweni ukusebenzisa omnye umyalelo nje ukuqinisekisa isiphumo semiyalelo yangaphambili.
Kwiimeko ezinjalo, sinokwenza imo ye-verbose ngokusebenzisa i- -v
ukhetho, olubonelela ngokuxilongwa kwifayile nganye eqhutywe.
Masenze ikopi yefayile-1.txt yefayile sisebenzisa lo myalelo ulandelayo:
$ cp -v file-1.txt file-3.txt

Kwimveliso engentla, utolo lumele ifayile ekotshwayo. Ingxoxo yecala lasekhohlo yifayile yemvelaphi ngelixa impikiswano yecala lasekunene yifayile ekuyiwa kuyo.
3. Uzikopa njani iiFayile ezininzi kuluhlu
Ukuza kuthi ga ngoku sisebenze ngefayile enye kunye nolawulo lwangoku olusebenzayo kuphela. Nangona kunjalo, kwindawo yokuvelisa ngokwenene, kufuneka sisebenze kunye nenani elikhulu leefayile. Enye yeemeko zosetyenziso oluqhelekileyo kwiimeko ezinjalo kukukhuphela iifayile ezininzi kulawulo olunye.
Ngokucacileyo, sinokwenza umyalelo we-cp amaxesha amaninzi ukuyifumana, kodwa leyo ayiyi kuba yeyona ndlela isebenzayo. Ukwenza umsebenzi onjalo ngokufanelekileyo, sinokusebenzisa enye indlela yesivakalisi yomyalelo we-cp.
Ke, kuqala, yenza uluhlu olutsha olunegama elithi dir-1:
$ mkdir dir-1
Ngoku, masikope zonke iifayile ezintathu kwi-dir-1 directory usebenzisa umyalelo omnye:
$ cp -v file-1.txt file-2.txt file-3.txt dir-1

Imveliso engentla ibonisa ukuba zonke iifayile zikhutshelwe kwi-dir-1 directory. Kwakhona, kubalulekile ukuqaphela ukuba, ukusebenzisa le syntax eyenye uvimba weefayili kufuneka ebekhona kwaye kufuneka ibe yingxoxo yokugqibela yomyalelo.
4. Ungakunqanda njani ukubhala ngaphezulu kweFayile
Ngokungagqibekanga, umyalelo we-cp uthatha indawo yefayile ekuyiwa kuyo, okuthetha ukuba iya kubhala ngaphezulu ifayile ukuba ikhona kwindawo enegama elifanayo. Nangona kunjalo, singakwazi ukukhubaza le ndlela yokuziphatha engagqibekanga ngokusebenzisa i -n
ukhetho.
Ukuqonda oku, makhe sizame ukubhala ngaphezulu ifayile ekhoyo:
$ cp -n -v file-1.txt file-2.txt
Kulo mzekelo, sisebenzise i--v
ukhetho lokubonisa ukuba ifayile-2.txt ifayile ayibhalwanga ngaphezulu.
5. Uyibhala njani ngaphezulu iFayile ngoQinisekiso
Kumzekelo wangaphambili, sibone indlela yokuphepha ukubhala ngaphezulu kwefayile yendawo ekuyiwa kuyo. Nangona kunjalo, ngamanye amaxesha sifuna ukubhala ngaphezulu indawo ekuyiwa kuyo ifayile ngendlela ekhuselekileyo.
Kwiimeko ezinjalo, sinokusebenzisa i -i
ukhetho lomyalelo ukwenza umsebenzi wokukhuphela usebenze. Olu khetho lubonisa umyalezo wesilumkiso kwaye ulindele ukuqinisekiswa komsebenzisi ngaphambi kokubhala ngaphezulu ifayile.
Ukubonisa oku, makhe sizame ukubhala ngaphezulu ifayile ekhoyo:
$ cp -i file-1.txt file-2.txt
cp: overwrite 'file-2.txt'?
Njengoko sibona, umyalelo ulindele ukuqinisekiswa. Njengeminye imiyalelo yeLinux, sinokusebenzisa y
ukuqhubeka okanye n
ukulahla ukusebenza.
Le ndlela yokuziphatha engagqibekanga engasebenziyo yomyalelo we-cp ayikhuselekanga kakhulu. Kukho amathuba okuba umsebenzisi angabhala ngaphezulu ubumbeko olubalulekileyo ngempazamo. Yiyo loo nto ezinye izinikezelo zeLinux zinyanzelisa impatho esebenzayo ngokungagqibekanga usebenzisa isibizo somyalelo:
$ alias cp='cp -i'
6. Bhala phezu kweFayile Kuphela Ukuba uMthombo nguMtsha
Kumzekelo odlulileyo, sibone indlela yokusebenzisa imo yokunxibelelana. Nangona kunjalo, ngamanye amaxesha, umsebenzisi unokubhala ngaphezulu ifayile entsha ngokungazi.
Ukunqanda iimeko ezinjalo ezinemposiso, sinokusebenzisa i -u
ukhetho, oluzama ukusebenza ngokukopa kuphela ukuba umthombo mtsha kunendawo ekuyiwa kuyo okanye ukuba ifayile ayikho kwindawo ekuyiwa kuyo.
Okokuqala, hlaziya isitampu sexesha sefayile yomthombo:
$ touch -t 10101010 file-1.txt
$ ls -l file-1.txt
Kulo mzekelo ungasentla, sisebenzise i-
Okulandelayo, masihlaziye isitampu sexesha sefayile yokufikela kwixesha langoku:
$ touch file-2.txt
Ngoku, makhe sizame ukwenza umsebenzi wokukhuphela usebenzisa i -u
ukhetho:
$ cp -u -v file-1.txt file-2.txt
Apha, sinokubona ukuba umsebenzi wokukopa awuzanywanga kuba ifayile yokufikela intsha kunomthombo.
Okokugqibela, masitshintshe umthombo kunye neengxoxo zendawo kwaye senze umsebenzi wokukopa:
$ cp -u -v file-2.txt file-1.txt
Kule mveliso ingasentla, sinokubona ukuba umsebenzi wokukhuphela uyaphumelela kuba ifayile yemvelaphi yintsha kunendawo ekuyiwa kuyo.

7. Uyigcina njani iFayile phambi kokuBhala ngaphezulu
Singayalela umyalelo we-cp ukuba uthathe ugcino lwefayile yendawo ekuyiwa kuyo ngaphambi kokuba uyibhale ngaphezulu. Ukufezekisa oku sinokusebenzisa i- --backup
ukhetho, olwenza i-backups ezenzekelayo.
$ cp --backup=numbered -v file-1.txt file-2.txt
Kulo mzekelo, sisebenzise umgaqo-nkqubo oneenombolo wogcino. Lo mgaqo-nkqubo usebenzisa amanani ongezelelweyo kumagama efayile egcinwayo.
Ukuqonda oku, masenze umyalelo ofanayo amaxesha amaninzi kwaye sijonge imveliso:
$ cp --backup=numbered -v file-1.txt file-2.txt
$ cp --backup=numbered -v file-1.txt file-2.txt
$ cp --backup=numbered -v file-1.txt file-2.txt

8. Unganyanzelela njani iKopi yokubhala ngaphezulu kweFayile
Kwimizekelo embalwa yangaphambili, sibone indlela yokubhala ngaphezulu kwefayile ngendlela ekhuselekileyo. Nangona kunjalo, kwezinye iimeko ezinqabileyo, imfuneko kukubhala ngaphezulu kwefayile. Nangona kunjalo, akukho siqinisekiso sokuba umsebenzi uya kuphumelela ngalo lonke ixesha.
Umzekelo, umsebenzi wokukhuphela uya kusilela ukuba ifayile yendawo ayinazo iimvume zokubhala. Makhe sizekelise oku ngomzekelo.
Okokuqala, tshintsha iimvume zefayile yendawo ekuyiwa kuyo:
$ chmod 444 file-2.txt
$ ls -l file-2.txt
Ngoku, makhe sizame ukubhala phezu kwefayile-2.txt ifayile:
$ cp file-1.txt file-2.txt
Kule mveliso ingentla, siyabona ukuba umyalelo awuphumelelanga ngemvume ekhanyelweyo yempazamo.
Ukoyisa lo mda, sinokusebenzisa i-
Ngoku, masisebenzise i -f
ukhetho ukubhala ngaphezulu ifayile ngamandla:
$ cp -f -v file-1.txt file-2.txt

9. Uyisusa njani iFayile yokuFikela phambi kokuba uyikope
Kumzekelo wangaphambili, sibone indlela yokususa ifayile yendawo ukuba kukho impazamo ngelixa usebenza. Nangona kunjalo, ngamanye amaxesha imfuneko kukususa ifayile yendawo yokuqala kwaye wenze umsebenzi wokukopisha.
Ukuzalisekisa loo mfuno, sinokusebenzisa i --susa-indawo yokuya kuyo
ukhetho.
$ cp --remove-destination -v file-1.txt file-2.txt

Kule mveliso ingentla, sinokubona ukuba umyalelo we-cp uqala ngokususa ifayile yendawo kwaye wenze umsebenzi wokukopisha.
10. Uyenza njani iFayile yoQhagamshelwano olunzima endaweni yokukopa
Singenza ikhonkco eliqinileyo endaweni yokwenza ikopi entsha yefayile yomthombo. Olu khetho ludlala indima ebalulekileyo xa kukho ukunqongophala kwendawo yediski.
Ke, masisebenzise i -l
ukhetho ukwenza ikhonkco elinzima:
$ cp -l -v file-1.txt file-4.txt
Ngoku, makhe sijonge amanani e-inode yazo zombini iifayile ukuze siqinisekise amakhonkco anzima:
$ ls -i1 file-1.txt file-4.txt

Kule mveliso ingasentla, amanani kwikholamu yokuqala amele amanani e-inode.
11. Uyenza njani iFayile yeLinki eSoft endaweni yokuKhuphela
Ngendlela efanayo, singenza ikhonkco elithambileyo endaweni yokwenza ikopi entsha usebenzisa i- -s
ukhetho njengoko kubonisiwe ngezantsi:
$ cp -s -v file-1.txt file-5.txt
Ngoku, masiqinisekise ukuba ikhonkco lokomfuziselo lenziwe ngokuchanekileyo:
$ ls -l file-5.txt

Kwisiphumo esingentla, iikholamu zokugqibela zibonisa unxulumano lwekhonkco lomfuziselo.
12. Uzigcina njani iimpawu zeFayile ngelixa ukopa
Kukho iimpawu ezahlukeneyo ezinxulunyaniswa nefayile, njengexesha layo lofikelelo, ixesha lolungiso, iimvume, njalo njalo. Ngokungagqibekanga, ezi mpawu azigcinwanga ngelixa ukhuphela ifayile. Ukubhala ngaphezulu le ndlela yokuziphatha engagqibekanga sinokusebenzisa i -p
ukhetho.
Ukuqonda oku, kuqala, hlaziya isitampu sexesha sefayile-1.txt:
$ touch -t 10101010 file-1.txt
Ngoku, masenze ikopi yale fayile ngokugcina zonke iimpawu zayo:
$ cp -p -v file-1.txt file-6.txt
Okokugqibela, qinisekisa isitampu sexesha sefayile-6.txt yefayile:
$ ls -l file-6.txt

13. Uwenza njani umSebenzi wokuKhuphela ngokuNgqongileyo
Ukuza kuthi ga ngoku siye sabona indlela yokukopa ifayile enye. Nangona kunjalo, amaxesha amaninzi kufuneka sikhuphele zonke iifayile kunye ne-sub-directory zoluhlu oluthile.
Kwiimeko ezinjalo, sinokusebenzisa imodi yokubuyisela okanye ukusebenzisa i- -r
okanye -R
ukhetho.
Ke, masenze uluhlu kwaye songeze iifayile ezimbalwa kunye nee-directory eziphantsi kwayo:
$ mkdir -p dir-1/dir-2
$ touch dir-1/file-1.txt dir-1/dir-2/file-2.txt
Okulandelayo, qinisekisa ukuba ulwakhiwo lolawulo lwenziwe ngokuchanekileyo:
$ tree dir-1
Ngoku, masikope uluhlu lwe-dir-1 ngokuphindaphindiweyo sisebenzisa lo myalelo ulandelayo:
$ cp -r -v dir-1 dir-3
Okokugqibela, qinisekisa ukuba zonke iifayile kunye noovimba beefayili bakhutshelwe ngempumelelo:
$ tree dir-3

14. UKopela njani iizalathisi ezininzi
Ngokufana neefayile, sinokukopa abalawuli abaninzi ngokuphindaphindiweyo sisebenzisa umyalelo omnye. Nangona kunjalo, ukufezekisa oku uvimba weefayili wendawo yokufikela kufuneka ebekhona kwaye kufuneka ibe yingxoxo yokugqibela kumyalelo. Makhe siqonde oku ngomzekelo.
Okokuqala, yenza uvimba weefayili omtsha:
$ mkdir dir-4
Ngoku, masikope i-dir-1 kunye ne-dir-3 abalawuli kwi-dir-4 directory sisebenzisa lo myalelo ungezantsi:
$ cp -r -v dir-1 dir-3 dir-4
Ngendlela efanayo, sinokusebenzisa i -t
ukhetho lomyalelo ukufezekisa umphumo ofanayo. Olu khetho lusivumela ukuba sichaze ulawulo lwendawo. Ke sinokuyisebenzisa njengengxoxo yokuqala ngokunjalo:
$ cp -t dir-4 -r -v dir-1 dir-3

Kweli nqaku, sixoxe ngendlela yokukopa iifayile kunye nezalathisi usebenzisa i-cp command. Abaqalayo banokubhekisa kule mizekelo kubomi bemihla ngemihla ngelixa besebenza neenkqubo zeLinux.
Usenokuthanda:
- Inkqubela-phambili – Bonisa ipesenti yeDatha eKopiweyo ye (cp, mv, dd, tar) imiyalelo
- Jonga iNkqubela phambili ye (Khuphela/Eyogcino/Compress) Idatha usebenzisa ‘pv’ Umyalelo
- Umyalelo wokuKhuphela oPhezulu-Ibonisa iBha yeNkqubela ngelixa ukopa iiFayile/iifolda ezinkulu kwiLinux
Ngaba uyawazi omnye umzekelo obalaseleyo womyalelo we-cp kwiLinux? Sazise izimvo zakho kwizimvo ezingezantsi.