Glavna arrow Linux/Unix arrow Konfiguracija arrow Komande za rukovanjem fajlovima u Unixu/Linuxu petak 25 jul 2008 
Sadrzaj
Glavna
Forum
Linux/Unix
Windows
Mreze
Sigurnost
Hardware
Knjige
Mobilni/PDA
Preuzimanje
Whois
Web Alati
Adresar
Galerija
Pretraga
E-mail
Kontakt
Pristup





Zaboravili ste lozinku?
Nemate nalog? Napravite nalog
 
samo po 1o1.com
po celom SCG web-u
Komande za rukovanjem fajlovima u Unixu/Linuxu | Štampaj |
Autor Tim 1o1   
Komande za rukovanje fajiovima
Ovde cemo opisati nekoliko komandi, koje mogu da se koriste za manipulisanje atributima jednog, ili vise fajlova, a takode cemo se baviti i kopiranjem i premestanjem fajlova sa jednog mesta na drugo. Medu ovim atributima, kojima je moguce rukovati, nalaze se vreme modifikacije fajla, dozvole i drugo.

touch
Komanda touch moze da se koristi u razlicite svrhe, u zavisnosti od toga da li fajl vec postoji, ili ne postoji. Ukoliko fajl ne postoji, komanda touch ce ga kreirati, pod uslovom da imate dozvolu za pisanje u direktorijum. Ako je fajl vec prisutan, komanda touch menja vreme poslednje modifikacije fajla.

Primeri
Za kreiranje u tekucem direktorijumu fajia, po imenu testfile, izvrsite komandu:
touch testfile
Za kreiranje fajla testfile u /u/testuser/testdir, izvrsite komandu:
touch /u/testuser/testdir/testfile

chmod
Mozda ce biti potrebno da modifikujete dozvolu koja se odnosi na rad sa direktorijumom, ili fajlovima, bilo da ih zastitite, ili ucinite pristupacnim drugima. Mozete da koristite komandu chmod i pomocu nje modifikujete dozvole za rad sa fajiovima i direktorijumima, koje se u UNIX-u specificiraju kao oktalni brojevi (0 do 7). Dozvola za fajl, ili direktorijum moze da se specificira za sledece entitete:
-vlasnika - korisnika koji je kreirao fajl
-grupu - grupu kojoj vlasnik pripada
-svet, ili ostale - korisnike od kojih ni jedan nije vlasnik i korisnike iz grupe kojoj vlasnik pripada.
Za svaki od pomenutih entiteta specificira se jedan oktalni broj, koji odreduje dozvolu.
Dozvola za vlasnika, grupu i svet izracunava se na osnovu tri bita pridruzena dozvolama za citanje, pisanje i izvrsavanje fajla. To znaci da ce bit za citanje imati vrednost jedan, ukoliko se dodeljuje dozvola za citanje, bit za pisanje imace vrednost jedan, ako se dodeljuje dozvola za pisanje, a bit za izvsgavanje imace vrednost jedan, ako se dodeljuje dozvola za izsrgavanje.
Trebalo bi da imate na umu da bit za izvrsavanje ne funkcionise na isti nacin kada se radi o direktorijumima. Dozvola za izvodenje koja se odnosi na direktorijum - odreduje da li je dozvoljen pristup tom direktorijumu.
Kombinacija ova tri bita izrazava se kao oktalni broj - pomocu njega se odreduje dozvola. Bit za citanje ima tezinu 4, bit za pisanje ima tezinu 2, a bit koji se odnosi na izvrsavanje ima tezinu 1. Vrednost dozvole izracunava se na sledeci nacin:

(4 * value of read bit) + (2 * value of write bit) + (1 * value of execute bit)

Vrednost dozvole moze da varira od 0 (nije dozvoljeno citanje, pisanje i izvrgavanje) do 7 (dozvoljeno je citanje, pisanje i izvrsavanje).
Na primer, ako hocete da dozvolite citanje i pisanje, ali ne i izvrsavanje, tada je vrednost koja treba da se upotrebi:

(4 * 1) + (2 * 1) + (1 * 0) = 6.

Trebalo bi da imate u vidu da dozvola za izvrsavanje koja se odnosi na direktorijum podrazumeva da moze da se pristupi direktorijumu. Drugim recima, dozvoljeno je izvodenje odredenih operacija nad fajlovima u tom direktorijumu.
Ako je odredenom direktorijumu pridodata dozvola za pisanje, korisnik ce moci da cita, pise, brise i izvrsava fajlove koji se nalaze u tom direktorijumu, bez obzira na to kakve dozvole postoje za individualne fajlove.
Pomocu chmod komande specificiraju se nove dozvole za odgovarajuci fajl i direktorijum. Nova dozvola moze da se specificira na jedan od sledeca dva nacina:
-kao trocifren numericki oktalni kod
-na simbolican nacin.

Primer
Pretpostavimo da hocete da za testfile vaze sledece dozvole: vlasnik moze da cita, pise i izvrsava, grupa moze samo da cita, a ostali samo da izvrsavaju. U tom s1ucaju, morate da izvrsite komandu:

chmod 741 testfile
Kada se koristi simbolicki nacin, potrebno je da se navedu sledece informacije:
-cije (vlasnika, grupe, ili ostalih) dozvole hocete da promenite
-koju operaciju: + (dodavanje), - (oduzimanje), ili = (jednako) hocete da izvedete nad dozvolama
-koju dozvolu menjate.
Ako hocete dozvolu za testfile (ciji ste Vi vlasnik u tekucem direktorijumu) da postavite tako da samo Vi i korisnici iz Vase grupe mozete da citate i pisete u taj fajl, pozovite komandu u kojoj koristite apsolutnu dozvolu:
chmod 660 testfile
Ukoliko hocete grupi da dodate dozvolu za pisanje u testfile, koji se nalazi u tekucem direktorijumu (pod pretpostavkom da vrednost dozvole za testfile sada iznosi 741), izvrsite komandu:
chmod g+w testfile
Na slican nacin, ako hocete ostalima da opozovete dozvolu za citanje fajla testfile, koji se nalazi u tekucem direktorijumu, pozovite komandu:
chmod o-r testfile
Ukoliko hocete svetu (ostalima) da za rad sa fajlom testfile, koji se nalazi u tekucem direktorijumu, dodelite iste dozvole koje ima grupa, pozovite komandu:
chmod o=g testfile
Napomena
Izmene ovih dozvola nece se odraziti na root korisnika. Korisnik root ima pristup svim fajlovima i direktorijumima, nezavisno od dozvola koja ste im dodelili.


chgrp
Ako hocete da promenite grupu kojoj fajl pripada, upotrebite chgrp komandu. Nova grupa mora da bude jedna od grupa kojoj vlasnik pripada. To znaci da ona mora da bude ili primarna, ili jedna od sekundarnih grupa vlasnika.
Primer!
Pretpostavimo da je korisnik testuser vlasnik fajla testfile, pri cemu je grupa kojoj fajl pripada staff. Takode, pretpostavimo da testuser pripada grupama staff i devt. Da biste promenili vlasnika fajla testfile sa staff na devt, izvrsite komandu:
chgrp devt testfile

chown
U slucaju da hocete da promenite vlasnika fajla ili direktorijuma, upotrebite chown komandu.

Primeri
Ako je korisnik testuser vlasnik fajla testfile, da bi se promenilo vlasnistvo nad fajlom, tako da njegov vlasnik postane korisnik simke, morate da pozovete komandu:
chown simke testfile

rm
Kada zavrsite koriscenje fajla koji vise nemate nameru da koristite, zelecete da ga uklonite i tako dobijete na raspolaganje prostor na disku gde je bio taj fajl. Komanda rm omogucava Vam da fajlove trajno uklonite sa diska. Ukoliko ime koje se navede predstavlja poslednji link na fajl, fajl se brise. Da bi se izbrisao iz direktorijuma, nije potrebno da imate dozvolu za citanje, ili pisanje u fajl, vec dozvolu za pisanje u direktorijum u kome se nalazi. Za uklanjanje fajlova obicno se upotrebljava komanda rm. U njoj moze da se koristi poseban indikator -r, koji sluzi za rekurzivno uklanjanje fajlova iz direktorijuma, ukljucujuci i direktorijum i poddirektorjume.
Evo liste nekih indikatora koji mogu da se koriste sa rm komandom:
-i za interaktivno uklanjanje fajlova
-f za uklanjanje fajlova bez poruka; ovim se nece generisati poruke u slucajevima kada fajl ne postoji, iii kada nemate dozvolu da uklonite jedan, ili vise fajlova
-r za rekurzivno uklanjanje fajlova iz direktorijuma i samih direktorijuma.

Osnovna UNIX verzija rm komande ne trazi potvrdu prilikom uklanjanja fajlova. Zbog toga sa rm komandom treba pazljivo koristiti dzoker znake.

Primeri
Ako hocete da uklonite sve fajlove iz tekuceg direktorijuma koji pocinju sa test, pozovite komandu:
rm test*
Medutim, ako u kucanju napravite gresku i otkucate: rm test *
uklonicete sve fajlove zbog znaka asterisk (*).

Upozorenje
Pazijivo koristite dzoker znake sa rm komandom. Pre nego sto uklonite fajl, provente sta radite. Kada se fajl ukloni, ne moze da se povrati.
Takve greske cete izbeci ako koristite indikator -i, kojim se zahteva izvrsavanje rm komandi na interaktivan nacin. Kada se koristi ovaj nacin, sistem ce pre uklanjanja fajla od Vas traziti potvrdu. Samo ako potvrdite ovaj zahtev sa y, on ce ukloniti navedeni fajl. Ukoliko hocete, pomocu rm komande, indikatorom -i da uklonite fajlove testfilel i testfile2 iz tekuceg direktorijuma, odvijace se sledeci dijalog izmedu Vas i sistema:
rm -i testfile*
Remove file testfilel? y Remove file testfile2? y
Ukoliko ne zelite da kao rezultat izvrsavanja rm komande dobijete bilo kakve poruke, sa komandom rm mozete da koristite indikator -f. Obicno ce komanda rm prikazati poruke o nepostojanju fajla, ako ne navedete njegovo ispravno ime. Medutim, upotreba indikatora -f prisiljava komandu da ne prikazuje bilo kakvu poruku. Ukoliko izvrsite komandu
rm -f testfile
fajl testfile ce biti izbrisan, ukoliko postoji. Ako ne postoji, nece biti preduzeta bilo kakva akcija. U oba slucaja necete dobiti poruku od rm komande. Isto tako, povratni kod komande rm -f uvek je 0 (nula).
Indikator - r mozete da koristite za rekurzivno uklanjanje fajlova iz direktorijuma, a i za uklanjanje direktorijuma i poddirektorijuma. Ako u tekucem direktorijumu postoji direktorijum po imenu testdir, u kome se nalaze fajlovi testfilel i testfile2, da biste uklonili te fajlove i direktorijum testdir, pozovite komandu:
rm -r testdir
Preporucljivo je da u svom okruzenju za rm komandu postavite alias rm -i, tako da se pre svakog brisanja fajla od Vas trazi potvrda.
Komanda rm na drukciji nacin obraduje fajlove, koji su linkovani hard linkom. Ako u svom tekucem direktorijumu imate testfilel i hocete da kreirate testfile2, koji je hard linkom linkovan na testfilel, izvrsite komandu:
ln testfilel testfile2
Ovim se, u stvari, kreiraju dva identicna fajla: testfilel i testfile2. Ako sada pozovete komandu
ls -l testfile*
dobicete sledeci rezultat:
-rw-r--r-- 2 testuser staff 10 Nov 3 14:28 testfilel
-rw-r--r-- 2 testuser staff 10 Nov 3 14:28 testfile2
Ovde broj linkova iznosi 2 i za testfilel i za testfile2, zato Sto su linkovani hard linkom. Ako sada uklonite testfilel, koristeci na sledeci nacin rm komandu,
rm testfilel
bice izvedene dve aktivnosti - uklanjanje fajla testfilel i smanjenje broja linkova za fajl testfile2 sa 2 na 1. Ako sada ponovite ls komandu, dobicete sledeci prikaz
rw-r--r-- 1 testuser staff 10 Nov 3 15:38 testfile2
gde broj linkova za testfile2 sada iznosi 1.

mv
Ukoliko niste zadovoljni imenom fajla, mozda cete zeleti da ga promenite. Komanda mv Vam to omogucava. Pored toga, ona Vam pruza mogucnost da fajlove premestate iz jednog direktorijuma u drugi, ne menjajuci njihova imena, sto je ekvivalentno kopiranju fajlova iz izvornog direktorijuma u uputni direktorijum i njihovom uklanjanju iz izvornog direktorijuma. Mozete ovo da radite, ako reorganizujete svoje fajlove. Kada premestate fajlove, ili direktorijume, ciljni (target) direktorijum dobija dozvole koje se odnose na izvorni direktorijum, nezavisno od toga da li ciljni fajl, ili direktorijum vec postoje.
Evo liste nekih indikatora koji mogu da se koriste sa mv komandom:
- i za interaktivno premestanje fajlova, iii promenu njihovih imena.
- f za premestanje fajlova, ili promenu njihovih imena, bez bilo kakvih poruka sistema. Ako koristite ovaj indikator, izostace prikazivanje poruka kada pokusate da promenite ime nepostojecem fajlu, ili kada nemate dozvolu da promenite ime fajlu.
Komanda mv ima dva argumenta: prvi je izvorni fajl, ili ime direktorijuma, a drugi je uputni fajl, ili direktorijum. Medutim, ponasanje mv komande zavisice od toga da li postoji uputni fajl, ili direktorijum.
Ako fajlove premestate u okviru istog fajl sistema, zadrzavaju se svi linkovi na druge fajlove. Ali ako ga premestate izvan granica fajl sistema, linkovi se nece sacuvati.

Primeri
Za promenu imena fajla u tekucem direktorijumu koristite komandu:
mv source file dest file
Ukoliko fajl dest file ne postoji, novi dest_file kreira se tako Sto se u njega kopira source_file i, potom, uklanja source_file. Ako dest_file postoji i Vi imate dozvolu za pisanje u njega, source file se kopira u dest file i, posle toga, uklanja. Ukoliko, medutim, takvu dozvolu nemate, komanda mv ne preduzima bilo kakvu akciju.
Ako hocete source file da premestite iz tekuceg direktorijuma u direktorijum /u/testuser/targer_dir, ne menjajuci mu, pri tom, ime, pozovite jednu od sledecih komandi:
mv source file /u/testuser/target_dir mv source file /u/testuser/target_dir/.
Ukoliko u direktorijumu /u/testuser/target_dir vec postoji takav fajl, on ce biti prekriven.
Da biste source_ file premestili iz tekuceg direktorijuma u direktorijum /u/testuser/target_dir, gde ce se nalaziti pod imenom target_file, pozovite komandu:
mv source file /u/testuser/target_dir/target_file.
Ako niste sigurni da li target_dir postoji, upotrebite indikator -i na sledeci nacin:
mv -i source_file target_dir/target_file
Ako fajl target_file postoji, sistem ce prikazati prompt poruku kojom ce se od Vas traziti da potvrdite zahtev za premestanje fajla.

Ako se za ciljno (target) ime fajla upotrebi . (tacka), to oznacava da treba da se zadrzi izvorno ime fajla. Ovo je narocito korisno kada vise fajlova premestate u drugi direktorijum. Ako hocete da premestite u direktorijum /u/testuser/target_dir sve fajlove cije ime pocinje sa test, pozovite komandu:


mv test* /u/testuser/target_dir/.
Da bi se promenilo ime direktorijumu source_dir u /u/testuser/dest_dir, pozovite komandu:
mv /u/testuser/source_dir /u/testuser/dest_dir
Ukoliko dest_dir ne postoji, direktorijum /u/testuser/source_dir menja ime u /u/testuser/dest_dir. Ako /u/testuser/dest_dir postoji i Vi za njega imate dozvolu pisanja, svi fajlovi i poddirektorijumi, koji se nalaze u /u/testuser/source_dir, premestaju se u /u/testuser/dest_dir.

cp
Komanda cp moze da se koristi za pravljenje kopije sadrzaja jednog, ili vise izvornih fajlova, pod imenom navedenih ciljnih fajlova. Ukoliko ciljni fajl vec postoji, preko njega se prepisuje sadrzaj izvornog fajla. Ponasanje komande cp je razlicito, u zavisnosti od toga da li izvor i cilj predstavljaju fajlove, ili direktorijume.

U sledecoj listi nalaze se neki indikatori koji mogu da se koriste sa cp komandom:
- p da se zadrze datum i vreme modifikacije izvornog fajla i dozvole koje se na njega odnose
- i za izvrsavanje copy komande na interaktivan nacin, tako da se, u slucaju da ciljni fajl postoji, trazi potvrda
- h da se slede simbolicki linkovi
- r da se fajlovi kopiraju u navedene direktorijume i pod-direktorijume; Posebni fajlovi, kao sto su linkovani fajlovi, tretiraju se na isti nain kao regularni fajlovi.

Primeri
Ako hocete da kopirate source_file u target_file u tekucem direktorijumu, mozete da izvrsite komandu cp u njenom najjednostavnijem obliku:


cp source_file target_file
Ako hocete da kopirate source_file u direktorijum /u/testuser/target_dir, zadrzavajuci, pri tom, ime fajla, pozovite komandu:
cp source_file /u/testuser/target_dir/.
Da biste kopirali sve fajlove koji se nalaze u /u/testuser/source_dir u direktorijum /u/testuser/target_dir, zadrzavajuci, pri tom, imena fajlova, njihovo vreme poslednje modifikacije i njihove dozvole, pozovite komandu:
i
cp -p /u/testuser/source_dir/* /u/testuser/target_dir/.
Ovim nece biti kopirani poddirektorijumi, ili fajlovi koji se nalaze u tim poddirektorijumima. Ako hocete da kopirate sve fajlove u nekom direktorijumu, a takode i poddirektorijume i fajlove u tim poddirektorijumima, zadrzavajuci, pri tom, datum i vreme poslednje modifikacije i dozvole za sve fajlove i poddirektorijume, upotrebite komandu:
cp -r /u/testuser/source_dir /u/testuser/target_dir/.
Ukoliko niste sigurni da li ciljni fajl vec postoji, upotrebite indikator -i. Sledeci dijalog odvijace se kada kopirate testfile iz tekuceg direktorijuma u direktorijum /u/testuser/testdir, pod pretpostavkom da testfile vec postoji u direktorijumu /u/testuser/testdir:
cp -i testfile /u/testuser/testdir/. overwrite /u/testuser/testdir/testfile? y

cat
Videli ste da Vam cp komanda omogucava da jedan fajl kopirate u drugi, ah ne i da vise fajlova kopirate u isti fajl. Za povezivanje (concatenation) vise fajlova u jedan fajl koristite komandu cat. Ona, po defaultu, generise izlaz na standardni izlaz i preuzima ulaz sa standardnog ulaza. Komanda cat za argumente ima jedan, ili vise fajlova. Ovi fajlovi se povezuju po redosledu po kome se pojavljuju u listi argumenata.
U sledeéoj listi nalaze se neki od indikatora koji mogu da se koriste sa cat komandom.
- b da se uklone brojevi redova iz praznih redova, kada se koristi indikator -n
- e da se prikaze $ (dolarski znak) na kraju svakog reda, kada se specificira indikator -v
- n da svakom od redova koji se prikazuju u izlazu prethodi broj reda, pri cemu su redovi sekvencijalno numerisani, pocevsi od 1
- q da se izostavi prikazivanje poruka kada komanda cat ustanovi da ne moze da pronade jedan ulazni ili vise ulaznih fajlova
- v da se karakteri u fajlu, koje nije moguce ispisrti, prikazu kao karakteri koje je moguce ispisati.

Upozorenje
Ako konstite operator za preusmerenje outputa (>) da preusmerite standardni output cat komande, vodite racuna da za ime output fajla ne navedete jedno od imena ulaznih fajlova. Ukoliko to uradite, ulazni fajl ce biti prekriven. Neke verzije UNIX-a daju poruku o gresci, kada pokusate da pisete preko fajla.
Kada preuzimate ulaz sa standardnog ulaza, trebalo bi da koristite Ctrl-d za oznacavanje kraja ulaza.

Primer
Mozete da kucate komandu cat u njenom najjednostavnijem obliku, sto bi trebalo da Vas stavi u mcd za unos (entry mode). U ovom nacinu mozete da unesete vise redova, iza kojih treba da se nalazi Ctrl-d za oznacavanje kraja. Komanda cat prikazaje upravo unete redove.
cat
This is test line 1
This is test line 1
This is test line 2
This is test line 2
Ctrl d
Trebalo bi da imate na umu da komanda cat u gornjem slucaju ne prikazuje bilo
kakav prompt.
Ukoliko hocete da na svom terminalu prikazete fajl testfile, koji se nalazi u
tekucem direktorijumu, pozovite komandu:
cat testfile

Ovo ce proizvesti sledeci izlaz:
This is a test file
This does not contain anything meaningful
This is for demo only
Trebalo bi da postupate pazljivo u slucaju da se radi o velikom fajlu. On ce na Vasem terminalu biti skrolovan i Vi cete videti samo poslednjih nekoliko redova. Ovaj problem mozete da prevazidete ako postavite izlaz na komandu more, ili komandu pg, na sledeci nacin:
cat testfile ; more
Da biste za prikazivanje na terminalu povezali vise fajlova, upotrebite komandu:
cat testfile1 testfile2 testfile3
Ukoliko hocete da ove fajlove povezete u fajl po imenu testfile, na sledeci nacin upotrebite operator > za preusmerenje:
cat testfilel testfile2 testfile2 > testfile
Ako fajl testfile vec postoji, on biva prekriven povezanim fajlovima testfile1, testfile2 i testfile3. Ukoliko testfile postoji i Vi hodete da se povezivanje izvrsi na kraju postojedeg fajla, umesto operatora za preusmerenje >, morate da upotrebite » (dva uzastopna znaka'vece od') na slededi nacin:
cat testfilel testfile2 testfile2 » testfile
Ako pokusate da povezete neki fajl, ili vise fajlova, pri cemu jedan, ili vise fajlova od onih koje ste naveli ne postoji, cat ce povezati sve raspolozive i na kraju generisati poruku o nepostojedim fajlovima. Ukoliko ste pokusali da u fajlu testfile, koji se nalazi u tekucem direktorijumu povezete fajlove testfilel i testfile2 i, pri tom, ste u slededoj komandi, umesto testfile pogresno otkucali testfile
cat testfilel testfile2 > testfile
dobicete poruku slicnu sledecoj; pri cemu ce se u fajlu testfile nalaziti samo sadrzaj fajla testfilel:
cat: cannot open testfile2
Ako koristite -q indikator, necete dobiti poruku o gresci.
Ukoliko u tekucem direktorijumu imate fajl testfile, u kome se nalaze sledeci redovi (poslednji red sadrzi specijalne karaktere), cat ce prikazati sledece:
This is a test file
This file does not contain anything meaningful
This file is for demo only
-F-F-F-F-F
Ukoliko izvrsite cat komandu -n indikatorom, cat ce prikazati numerisane redove, ali ce poslednji red, u kome se nalaze specijalni karakteri, biti prikazan kao prazan:
cat -n testfile
1 This is a test file
2
3 This file does not contain anything meaningful
4 This is for demo only
5
Ako hocete da budete sigurni da prikazani prazan red zaista ne sadrzi druge karaktere, osim onih koji ne mogu da se prikazu, sa cat komandom upotrebite -v indikator. Ovim se postize da se karakteri koje nije moguce ispisati prikazuju kao karakteri koje je moguce ispisati:
cat -v testfile
This is a test file
This file does not contain anything meaningful
This is for demo only
-F-F-F-F-F

rcp
Do sada ste videli odreden broj komandi za premestanje, ili kopiranje fajlova u razlicite direktorijume, koji se nalaze na lokalnom hostu. Ako je potrebno da kopirate fajlove sa jednog na drugi host, moze da se koristi rcp komanda. Nju mozete da izvrsite na lokalnom hostu, da biste kopirali fajlove sa lokalnog na udaljeni host, ili sa jednog udaljenog hosta na drugi.
Imenu fajla na udaljenom hostu prethodi ID udaljenog hosta na sledeci nacin: hostname: /dirname/filename. Dve tacke (:) koriste se za razdvajanje imena hosta i fajla.
Takode je moguce da se na udaljenom hostu navede ime korisnika kao user - name@hostname: /dirname/filename. At-znak (@) koristi se da razdvoji imena korisnika i ime hosta. Medutim, ime korisnika je opciono. Ukoliko se ne specificira, ime korisnika na udaljenom isto je kao ime korisnika na lokalnom hostu.
Ako izvorni, ili ciljni fajl ne specificiraju ime hosta, rcp komanda ponasa se kao cp komanda.
Ukoliko ime fajla na udaljenom hostu nije puno kvalifikovano ime, koje pocinje root direktorijumom, pretpostavlja se da ime fajla, ili direktorijuma pocinje home direktorijumom udaljenog korisnika.
Ako fajlovi ne postoje na udaljenom hostu, oni se kreiraju tako da dobiju default dozvolu udaljenog korisnika. Ukoliko ovi fajlovi vec postoje na udaljenom hostu, ostaju da vaze dozvole tih ciljnih fajlova.

Slicno komandi cp, i komandu rcp mozete da koristite za kopiranje direktorijuma i fajlova u direktorijumima.

U sledecoj listi navedeni su neki od indikatora koji mogu da se koriste sa komandom rcp:
- p za kreiranje ciljnog fajla, sa datumom i vremenom modifikacije izvornog fajla i njegovom dozvolom
- r za rekurzivno kopiranje fajlova kada se kopiraju direktorijuma.

Primer
Ako hocete da kopirate testfile iz tekuceg direktorijuma u testfile u direktorijumu testdir, koji se nalazi u home direktorijumu na udaljenom hostu, cije je ime otherhost, izvrsite komandu:
rcp testfile otherhost:testdir/testfile
Ako je ime korisnika na lokalnom hostu testuser, ova komanda ce pretpostaviti da je i ime korisnika na udaljenom hostu testuser ne postoji na udaljenom hostu i ako morate za korsnika na udaljenomenom hostu da koristite ime newtestuser, izvrsite komandu:
rcp testfile newtestuser@otherhost:testdir/testfile
Ako morate sa udaljenog hosta otherhostl da prenesete fajl testfile na drugi udaljeni host otherhost2, i, pri tom, hocete da se sacuvaju datum i vreme modifikacije i dozvola, izvrsite komandu:
rcp -p testuserl@otherhostl :testfile testuser2@otherhost2:testfile
Ovim se testfile kopira iz home direktorijuma korisnika testuser1 na udaljenom hostu otherhostl u testfile u home direktorijumu korisnika testuser2 na udaljenom hostu otherhost2.
Ako hocete da kopirate sve fajlove koji se nalaze u direktorijumu /u/testuser/testdir na udaljenom hostu otherhost u tekuci direktorijum na lokalnom hostu, izvrsite komandu:
rcp testuser@otherhost:/u/testuser/testdir/*
Ovim se nece kopirati poddirektorijumi koje, mozda, imate u direktorijumu testdir, ili bilo koji fajlovi koji se nalaze u ovim poddirektorijumima. Da biste kopirali sve poddirektorijume i fajlove u ovim poddirektorijumima, upotrebite komandu:
rcp -r testuser@otherhost:/u/testuser/testdir/*

ln
Ponekad je potrebno da se istom fajlu dodele alternativna imena. To se postize linkovanjem imena fajla sa drugim imenom, pomocu ln komande. Moguce je linkovati fajl sa drugim imenom u istom direktorijumu, ili sa istim imenom u drugom direktorijumu.
Kada se linkuje ime fajla sa nekim drugim imenom fajla, mozete da navedete samo dva argumenta: ime izvornog fajla i ime ciljnog fajla. Kada ime fajla linkujete sa direktorijumom, mozete da navedete vise imena koje linkujete sa istim direktorijumom.
Ako linkujete koriscenjem hard linkova, ne mozete da linkujete sa fajlom koji se nalazi u drugom fajl sistemu. Ako koristite soft link, prilikom linkovanja mozete da prelazite granice fajl sistema.
Indikatori koji mogu da se koriste sa ln komandom su sledeci:
- s za kreiranje soft linka sa drugim fajlom, iii direktorijumom. (linkovan fajl sadrzi ime originalnog fajla); kada se zavrsi operacija linkovanja imena fajla, ime originalnog fajla u linku koristi se kao referenca na originalni fajl.
- f obezbedjuje da se uputno ime fajla zamenjuje linkovanim imenom fajla, ako fajl postoji.
Komanda ln, po defailt-u, kreira hard link.

Primeri
Ako hocete da linkujete testfilei sa testfile2 u tekucem direktorijumu, izvrsite komandu:
ln testfilel testfile2
Ovim se kreira testfile2, koji je linkovan hard linkom sa testfilel. Ako se ukloni jedan od ova dva fajla, drugi ostaje nepromenjen.
Ukoliko testfile, koji se nalazi u tekucem direktorijumu, treba da bude linkovan sa testfile u direktorijumu /u/testuser/testdir, izvrsite komandu:
ln testfile /u/testuser/testdir
Ako hocete da za testfilei u tekucem direktorijumu kreirate simbolicki link, izvrsite komandu:
ln -s testfilel testfile2
Ovim se kreira linkovan testfile2, koji sadrzi ime testfilel. Ako uklonite testfilei, ostace sam testfile2 - on nigde ne pokazuje.
Ako hocete da linkujete sve fajlove koji se nalaze u tekucem direktorijumu sa direktorijumom /u/testuser/testdir, pozovite komandu:
ln * /u/testuser/testdir/.


 
: Glavna :: Forum :: Linux/Unix :: Windows :: Mreze :: Sigurnost :: Hardware :: Knjige :: Mobilni/PDA :: Preuzimanje :
Powered by 1o1
PodignimoStupove!