Kā izveidot direktorijus Linux ar komandu "mkdir"

Šī rokasgrāmata parādīs, kā izveidot jaunas mapes vai direktorijas Linux sistēmā, izmantojot komandrindu.

Komandu, kuru izmantojat direktoriju izveidošanai, ir mkdir. Šajā rakstā ir redzams pamata veids, kā izveidot direktorijus Linux, kā arī aptver visus pieejamos slēdžus.

Kā izveidot jaunu direktoriju

Vienkāršākais veids, kā izveidot jaunu direktoriju, ir šāds:

mkdir

Piemēram, ja vēlaties izveidot direktoriju zem savas mājas mapes ar nosaukumu tests, atveriet termināla logu un pārliecinieties, ka esat savā mītnes mapē (izmantojiet cd ~ komandu ).

mkdir tests

Jaunā direktorija atļauju maiņa

Pēc jauna mapes izveidošanas, iespējams, vēlēsities iestatīt atļaujas, lai tikai konkrēts lietotājs varētu piekļūt mapei vai tā, ka daži lietotāji var rediģēt mapē esošos failus, bet citi ir tikai lasījuši.

Pēdējā sadaļā es parādīju jums, kā izveidot direktoriju ar nosaukumu tests. Ls komandas darbināšana parādīs jums šīs direktorijas atļaujas:

ls -lt

Iespējams, ka jums būs kaut kas šāds:

drwxr-xr-x 2 īpašnieku grupa 4096 9 Mar 19:34 tests

Biti, kurus mēs interesējam, ir drwxr-xr-x īpašnieks un grupa

D pasaka mums, ka pārbaude ir direktorija.

Pirmās trīs rakstzīmes pēc d ir īpašnieka atļaujas direktorijai, kuru norāda īpašnieka vārds.

Nākamās trīs rakstzīmes ir grupas atļaujas failam, kas norādīts grupas nosaukumā. Atkal iespējas ir r, w un x. - nozīmē, ka trūkst atļaujas. Iepriekš minētajā piemērā ikviens, kas pieder grupai, var piekļūt mapei un lasīt failus, bet nevar to ierakstīt mapē.

Pēdējās trīs rakstzīmes ir atļaujas, kuras ir visiem lietotājiem un kā redzat iepriekš redzamajā piemērā, tās ir tādas pašas kā grupas atļaujas.

Lai mainītu faila vai mapes atļaujas, varat izmantot chmod komandu. Komandu chmod ļauj norādīt 3 ciparus, kas nosaka atļaujas.

Lai iegūtu atļauju maisījumu, jūs kopā pievienojat numurus. Piemēram, lai lasītu un izpildītu atļaujas, nepieciešamais numurs ir 5, lai lasītu un rakstītu atļaujas, numurs ir 6, un, lai saņemtu rakstīšanas un izpildes atļaujas, numurs ir 3.

Atcerieties, ka komandas chmod ietvaros ir jāprecizē 3 numuri. Pirmais numurs ir īpašnieka atļaujas, otrais numurs ir grupas atļaujām, un pēdējais numurs ir visiem pārējiem.

Piemēram, lai saņemtu pilnīgas atļaujas īpašniekam, lasītu un izpildītu atļaujas grupā, un nevienai citai atļaujai ierakstiet šādu:

chmod 750 tests

Ja vēlaties mainīt grupas nosaukumu, kuram pieder mape, izmantojiet komandu chgrp.

Piemēram, iedomājieties, ka vēlaties izveidot direktoriju, kuru var piekļūt visi jūsu uzņēmuma grāmatveži.

Pirmkārt, izveidojiet grupas kontus, ierakstot šādu:

groupadd konti

Ja jums nav pareizas atļaujas grupas izveidei, jums var būt nepieciešams izmantot sudo, lai iegūtu papildu tiesības, vai pārslēgties uz kontu ar derīgām atļaujām, izmantojot su komandu .

Tagad jūs varat mainīt mapes grupu, ierakstot šo:

chgrp konti

Piemēram:

chgrp kontu pārbaude

Lai ļautu kādam kontu grupā lasīt, rakstīt un izpildīt piekļuvi, kā arī īpašniekam, bet visiem citiem lasīt, varat izmantot šādu komandu:

chmod 770 tests

Lai pievienotu lietotāju kontu grupai, jūs, iespējams, vēlēsities izmantot šādu komandu:

usermod -a -G konti

Iepriekš minētā komanda pievieno kontu grupu sekundāro grupu sarakstam, pie kura lietotājs var piekļūt.

Kā izveidot direktoriju un iestatīt atļaujas tajā pašā laikā

Varat izveidot direktoriju un iestatīt atļaujas šim direktorijam vienlaicīgi, izmantojot šādu komandu:

mkdir -m777

Iepriekš minētā komanda izveidos mapi, kurā katram ir piekļuve. Tas ir ļoti reti, ja jūs vēlaties izveidot kaut ko ar šāda veida atļaujām.

Izveidojiet mapi un visus vecākus, kas ir nepieciešami

Iedomājieties, ka vēlaties izveidot direktoriju struktūru, bet nevēlaties katrai atsevišķai mapei izveidot un ceļu uz koka.

Piemēram, jūs, iespējams, izveidojat savas mūzikas mapes šādi:

Būtu kaitinoši izveidot rock mapi, tad alice Cooper un Queen mapi un pēc tam izveidot rap failu mapi un Dr Dre mapi un pēc tam džeza mapi un pēc tam mapi Louisejordan.

Norādot šādu slēdzi, jūs varat izveidot visas vecās mapes lidojumā, ja tās vēl neeksistē.

mkdir -p

Piemēram, lai izveidotu vienu no iepriekš minētajām mapēm, izmēģiniet šādu komandu:

mkdir -p ~ / music / rock / alicecooper

Kā apstiprināt, ka katalogs ir izveidots

Pēc noklusējuma komanda mkdir nepasaka, vai izveidotais katalogs ir veiksmīgi izveidots. Ja nepastāv nekādas kļūdas, varat uzskatīt, ka tā ir.

Ja jūs vēlaties iegūt vairāk verbose produkcijas, lai jūs zināt, kas ir izveidots, izmantojiet šādu slēdzi.

mkdir -v

Izvade būs gar mkdir līniju : izveidota direktorija / path / uz / directoryname .

Izmantojot & # 39; mkdir & # 34; Shell skriptā

Dažreiz jūs vēlaties izmantot komandu "mkdir" kā daļu no čaulas skripta. Piemēram, apskatīsim skriptu, kas pieņem ceļu. Kad skripts tiek izpildīts, tas izveidos mapi un pievienos vienu teksta failu ar nosaukumu "sveiki".

#! / bin / bash

mkdir $ @

cd $ @

pieskarties sveiki

Pirmā rindiņa jāiekļauj katrā skriptā, kuru jūs rakstījāt, un tiek izmantots, lai parādītu, ka tas patiešām ir BASH skripts.

Komandu "mkdir" izmanto, lai izveidotu mapi. "$ @" ( Pazīstams arī kā ievades parametri ) 2. un 3. līnijas beigās tiek aizstāts ar vērtību, kuru norādāt skripta izpildes laikā.

Komandu "cd" mainās norādītajā direktorijā un visbeidzot pieskāriena komanda izveido tukšu failu ar nosaukumu "sveiki".

Jūs varat izmēģināt skriptu pats par sevi. Lai to izdarītu, rīkojieties šādi:

  1. Atveriet termināla logu (nospiediet Alt un T to jādara)
  2. Ievadiet nano createhellodirectory.sh
  3. Ievadiet redaktorā iepriekš minētās komandas
  4. Saglabājiet failu, vienlaikus nospiežot CTRL un O
  5. Iziet no faila, vienlaikus nospiežot CTRL un X
  6. Mainiet atļaujas, ierakstot chmod + x createhellodirectory.sh
  7. Palaidiet skriptu, ierakstot testu ./createhellodirectory.sh

Kad palaižat skriptu, tiks izveidots direktorijs ar nosaukumu "tests", un, mainot šo direktoriju ( cd tests) un palaist direktoriju sarakstu ( ls), tiks parādīts viens fails ar nosaukumu "hello".

Līdz šim tik labi, bet tagad mēģiniet sākt 7 solis vēlreiz.

  1. Parādīsies kļūda, kurā norādīts, ka mape jau pastāv.

Lai uzlabotu skriptu, mums ir dažādas lietas. Piemēram, ja mape jau eksistē, mēs īpaši nepievēršam uzmanību, kamēr tā pastāv.

#! / bin / bash

mkdir-p $ @

cd $ @

pieskarties sveiki

Ja jūs norādāt -p kā komandas mkdir daļu, tad tas nebūs kļūdains, ja mape jau pastāv, bet, ja tā neeksistē, tā to izveidos.

Kā tas notiek, pieskāriena komanda izveido failu, ja tas neeksistē, bet, ja tas pastāv, tas vienkārši groza pēdējo piekļūtošo datumu un laiku.

Iedomājieties, ka pieskāriena paziņojums tika aizstāts ar echo paziņojumu, kas raksta tekstu failā šādi:

#! / bin / bash

mkdir-p $ @

cd $ @

echo "hello" >> sveiki

Ja palaižat komandu "./createhellodirectory.sh test", atkal un atkal būs efekts, ka testa direktorijā esošais fails "hello" pieaugs lielāk un lielāks ar vairāk un vairāk līnijām ar vārdu "sveiki" tajā.

Tagad tas var vai nevar būt kā paredzēts, bet tagad teiksim, ka šī nav vēlamā darbība. Jūs varat uzrakstīt testu, lai pārliecinātos, ka direktorija neeksistē pirms echo komandas palaišanas šādi.

#! / bin / bash

mkdir $ @ 2> / dev / null;

ja [$? -eq 0]; tad

cd $ @

echo "hello" >> sveiki

Izeja

fi

Iepriekšējais skripts ir mana vēlamā metode, kā rīkoties ar mapju izveidi. Komandu mkdir izveido mapi, kas tiek ievadīta kā ievades parametrs, taču jebkura kļūdu izvade tiek nosūtīta uz / dev / null (kas pamatā nozīmē nekur).

Trešā rinda pārbauda iepriekšējās komandas izvades statusu, kas ir "mkdir" paziņojums, un, ja tas izdosies, tā izpildīs paziņojumus, līdz tiek parādīts "fi" paziņojums.

Tas nozīmē, ka varat izveidot mapi un veikt visas nepieciešamās darbības, ja komanda ir veiksmīga. Ja vēlaties kaut ko darīt, ja komanda nav bijusi veiksmīga, jūs varat vienkārši ievadīt citu paziņojumu šādi:

#! / bin / bash

mkdir $ @ 2> / dev / null;

ja [$? -eq 0]; tad
cd $ @
echo "hello" >> sveiki
Izeja
cits
cd $ @
echo "hello"> sveiki
Izeja
fi

Iepriekš minētajā skriptā, ja darbojas mkdir paziņojums, atbalss paziņojums nosūta vārdu "hello" uz faila beigām ar nosaukumu "hello", bet, ja tas neeksistē, tiks izveidots jauns fails ar nosaukumu "hello" ar vārdu " sveiks "tajā.

Šis piemērs nav īpaši praktisks, jo jūs varētu sasniegt tādus pašus rezultātus, vienlaikus vadot echo "hello"> hello line . Piemēra piemērs ir parādīt, ka jūs varat palaist komandu "mkdir", paslēpt kļūdas iznākšanu, pārbaudīt komandas statusu, lai noskaidrotu, vai tā ir veiksmīga vai ne, un pēc tam izpildīt vienu komandu kopu, ja komanda "mkdir" bija veiksmīgs un vēl viens komandu komplekts, ja tas nebija.