Ta vodnik vam bo pokazal, kako ustvariti nove mape ali imenike v Linuxu s pomočjo ukazne vrstice.
Ukaz, ki ga uporabljate za ustvarjanje imenikov, je mkdir. V tem članku je prikazan osnovni način ustvarjanja imenikov v Linuxu in zajema vsa razpoložljiva stikala.
Kako ustvariti nov imenik
Najpreprostejši način ustvarjanja novega imenika je naslednji:
mkdir Če na primer želite ustvariti imenik pod vašo domačo mapo, imenovano test, odprite okno terminala in se prepričajte, da ste v domači mapi (uporabite ukaz cd cd). Ko ustvarite novo mapo, boste morda želeli nastaviti dovoljenja, tako da lahko le določenemu uporabniku dostopa do mape ali tako, da lahko nekateri ljudje urejate datoteke v mapi, drugi pa samo za branje. V zadnjem poglavju sem vam pokazal, kako ustvariti imenik z imenom test. Z zagonom ukaza ls se prikažejo dovoljenja za ta imenik: Je -lt Verjetno boste imeli nekaj na tej liniji: drwxr-xr-x 2 lastnik skupine 4096 9. mar 19:34 test Bitov, ki jih zanima, sodrwxr-xr-x lastnikin skupina D nam pove, da je test imenik. Prvi trije znaki po d so dovoljenja lastnika za imenik, ki ga določa lastnikovo ime: Naslednji trije znaki so skupinska dovoljenja za datoteko, ki jo podaja ime skupine. Ponovno so možnosti r, w in x. - pomeni, da manjka dovoljenje. V zgornjem primeru lahko vsakdo, ki pripada skupini, dostopa do mape in preberi datoteke, ne more pa pisati v mapo. Zadnji trije znaki so dovoljenja, ki jih imajo vsi uporabniki, in kot vidite v zgornjem primeru, so ti isti kot dovoljenja za skupino. Če želite spremeniti dovoljenja za datoteko ali mapo, ki jo lahko uporabitechmodukaz. Ukaz chmod vam omogoča določitev 3 številk, ki določajo dovoljenja: Če želite dobiti mešanico dovoljenj, jih skupaj dodate. Na primer, če želite prebrati in izvršiti dovoljenja, morate številko, ki jo potrebujete, 5, da dobite dovoljenja za branje in pisanje, številka 6 in da dobite dovoljenja za pisanje in izvajanje, številka 3. Ne pozabite, da morate podati 3 številke kot del ukaza chmod. Prva številka je za dovoljenja lastnika, druga številka za dovoljenja skupine in zadnja številka je za vse ostale. Če želite na primer pridobiti popolna dovoljenja za lastnika, prebrati in izvršiti dovoljenja v skupini in nobenih dovoljenj za nobeno drugo ne vnesite naslednje: chmod 750 test Če želite spremeniti ime skupine, ki ima v lasti mapo, uporabite ukaz chgrp. Predstavljajte si, na primer, da želite ustvariti imenik, do katerega lahko dostopajo vsi računovodji v vašem podjetju. Najprej ustvarite račune skupin tako, da vnesete naslednje: skupinski računi Če nimate pravilnega dovoljenja za ustvarjanje skupine, boste morda morali uporabiti sudo, da pridobite dodatne privilegije ali preklopite na račun z veljavnimi dovoljenji z ukazom su. Sedaj lahko skupino za mapo spremenite tako, da vnesete naslednje: računov chgrp Na primer: preskus računov chgrp Če želite kogarkoli v skupini računov prebrati, napisati in izvršiti dostop, kot tudi lastnika, vendar samo za branje za vse ostale, lahko uporabite naslednji ukaz: chmod 770 test Če želite dodati uporabnika v skupino računov, boste verjetno želeli uporabiti ta ukaz: usermod -a -G računov Zgornji ukaz dodaja skupino računov na seznam sekundarnih skupin, do katerih ima uporabnik dostop. Ustvarite imenik in istočasno nastavite dovoljenja za ta imenik z naslednjim ukazom: mkdir -m777 Zgornji ukaz bo ustvaril mapo, do katere imajo vsi dostop. Zelo redki ste, da bi radi ustvarili karkoli s takšnimi dovoljenji. Predstavljajte si, da želite ustvariti strukturo imenika, vendar ne želite ustvariti vsake posamezne mape skupaj s potjo in se potruditi po drevesu. Na primer, lahko ustvarite mape za glasbo na naslednji način: Bilo bi nerodno, da bi morali ustvariti skalnato mapo, potem alice cooper in kraljica mapo in nato ustvariti mapo rap in mapo dr dre, nato pa jazz mapo in nato mapo louisjordan. Z navedbo naslednjega stikala lahko ustvarite vse starševske mape, ki že obstajajo, če jih še ne obstajajo. mkdir -p Na primer, če želite ustvariti eno od zgoraj navedenih map, poskusite z naslednjim ukazom: mkdir -p ~ / glasba / rock / alicecooper Privzeto vam ukaz mkdir ne pove, ali je bil ustvarjen imenik uspešno ustvarjen. Če se ne pojavijo napake, lahko domnevate, da je. Če želite dobiti bolj natančen izhod, tako da boste vedeli, kaj je bilo ustvarjeno, uporabite naslednje stikalo. mkdir -v Izhod bo potekal po vrsticahmkdir: ustvaril imenik / pot / v / imenik. Včasih boste želeli uporabiti ukaz "mkdir" kot del lupinskega skripta. Na primer, poglejmo skript, ki sprejema pot. Ko se scenarij izvede, bo ustvaril mapo in dodal eno besedilno datoteko, imenovano "zdravo". #! / bin / bash mkdir $ @ cd $ @ se pozdravi Prva vrstica mora biti vključena v vsak skript, ki ga napišete, in se uporablja za prikaz, da je to dejansko BASH skript. Ukaz "mkdir" se uporablja za ustvarjanje mape. "$ @" (Znana tudi kot vhodni parametri) na koncu 2. in 3. vrstice se nadomesti z vrednostjo, ki jo določite pri zagonu skripta. Ukaz "cd" se spremeni v imenik, ki ga izberete, in na koncu ukaz za ustvarjanje prazne datoteke ustvari prazno datoteko, imenovano "zdravo". Skript lahko poskusite sami. To storite tako: Ko zaženete skript, se bo ustvaril imenik »test« in če se bo spremenil v ta imenik (cd test) in vodite seznam imenikov (ls), boste videli eno datoteko, imenovano "zdravo". Doslej je tako dobro, a sedaj še enkrat poskusite ponovno izvajati 7. korak. Za izboljšanje scenarija lahko storimo različne stvari. Če na primer že obstaja mapa, ne skrbimo, dokler obstaja. #! / bin / bash mkdir -p $ @ cd $ @ se pozdravi Če podate ukaz -p kot del ukaza mkdir, potem ne bo prišlo do napake, če mapa že obstaja, če pa ne obstaja, jo bo ustvarila. Kot se zgodi, bo ukaz za dodajanje ustvaril datoteko, če ne obstaja, če pa obstaja, preprosto spremeni zadnji datum in čas dostopa. Predstavljajte si, da je bila izjava o dotiku zamenjana z izjavo o ehu, ki piše besedilo v datoteko na naslednji način: #! / bin / bash mkdir -p $ @ cd $ @ echo "zdravo" >> pozdrav Če zaženete ukaz "./createhellodirectory.sh test" znova in znova bo učinek, da se bo datoteka, imenovana "hello" v testnem imeniku, povečala in povečala z več vrsticami z besedo "hello" v njem. Zdaj je to lahko ali pa tudi ne, kot je bilo predvideno, recimo pa, da to ni želeno dejanje. Preizkus lahko napišete, da se prepričajte, da imenik ne obstaja, preden zaženete ukaz echo na naslednji način. #! / bin / bash mkdir $ @ 2> / dev / null; če $? -eq 0; potem cd $ @ echo "hello" >> hello exit fi Zgornji scenarij je moj najprimernejši način za ravnanje z ustvarjanjem map. Ukaz mkdir ustvari mapo, ki se prenese kot vhodni parameter, vendar se vsak izhod napake pošlje na / dev / null (kar v bistvu pomeni nikjer). Tretja vrstica preveri izhodni status prejšnjega ukaza, ki je izjava »mkdir« in če bo uspelo, bo izjave izvršil, dokler ne bo dosežen izpis »fi«. To pomeni, da lahko ustvarite mapo in izvedete vse, kar želite, če je ukaz uspešen. Če želite narediti nekaj drugega, če ukaz ni bil uspešen, lahko preprosto vnesete drugo izjavo, kot sledi: #! / bin / bash mkdir $ @ 2> / dev / null; če $? -eq 0; thencd $ @ echo "hello" >> helloexitelsecd $ @ echo "hello"> helloexitfi V zgornjem skriptu, če deluje izjava mkdir, potem izjava o ehu pošlje besedo "zdravo" na konec datoteke, imenovano "hello", če pa ne obstaja, se bo ustvarila nova datoteka, imenovana "zdravo", z besedo " zdravo "v njem. Ta primer ni posebej praktičen, ker lahko dosežete enake rezultate, tako da vedno vodite echo "hello"> hello line. Točka primera je pokazati, da lahko zaženete ukaz "mkdir", skrijete izhod napake, preverite stanje ukaza, da vidite, ali je bil uspešen ali ne, in nato izvedite en komplet ukazov, če je ukaz "mkdir" je bil uspešen in še en niz ukazov, če ni bilo. Spreminjanje dovoljenj novega imenika
Kako ustvariti imenik in nastaviti dovoljenja ob istem času
Ustvarite mapo in vse starše, ki so potrebni
Potrditev, da je bil ustvarjen imenik
Uporaba "mkdir" v Shell Scriptu













