Jinsi ya Kujenga maelezo katika Linux na amri ya "mkdir"

Mwongozo huu utakuonyesha jinsi ya kuunda folda mpya au waandishi ndani ya Linux ukitumia mstari wa amri.

Amri ambayo unayotumia kwa ajili ya kujenga directories ni mkdir. Makala hii inakuonyesha njia ya msingi ya kuunda kumbukumbu katika Linux pamoja na kufunika swichi zote zilizopo.

Jinsi ya Kujenga Directory mpya

Njia rahisi zaidi ya kuunda saraka mpya ni kama ifuatavyo:

mkdir

Kwa mfano, ikiwa unataka kuunda saraka chini ya folda yako ya nyumbani inayoitwa mtihani, fungua dirisha la terminal na uhakikishe kuwa uko katika folda yako ya nyumbani (tumia amri ya cd ~ ).

mtihani wa mkdir

Kubadilisha vibali za Directory mpya

Baada ya kuunda folda mpya unaweza kupenda kuweka ruhusa ili mtumiaji fulani pekee anaweza kufikia folda au ili watu wengine waweze kuhariri faili kwenye folda lakini wengine wameisoma tu.

Katika sehemu ya mwisho, nilikuonyesha jinsi ya kuunda saraka inayoitwa mtihani. Kuendesha amri ya ls itaonyesha idhini ya saraka hiyo:

ls -lt

Nafasi utapata kitu kando ya mistari hii:

drwxr-xr-x 2 mmiliki kundi 4096 Machi 9 19:34 mtihani

Bits tunayopendezwa ni mmiliki wa drwxr-xr-x na kikundi

D inatuambia kuwa mtihani ni saraka.

Wahusika watatu wa kwanza baada ya d ni ruhusa ya mmiliki wa saraka iliyowekwa na jina la mmiliki.

Wahusika watatu waliofuata ni vibali vya kikundi cha faili iliyowekwa na jina la kikundi. Tena chaguo ni r, w, na x. The - inamaanisha kuwa kuna idhini inakosa. Kwa mfano juu ya mtu yeyote wa kikundi anaweza kufikia folda na kusoma files lakini hawezi kuandika kwenye folda.

Wahusika watatu wa mwisho ni vibali ambazo watumiaji wote wana na kama unaweza kuona katika mfano hapo juu ni sawa na idhini ya kikundi.

Ili kubadilisha idhini ya faili au folda unaweza kutumia amri ya chmod . Amri ya chmod inakuwezesha kutaja nambari 3 ambazo zinaweka vibali.

Ili kupata mchanganyiko wa ruhusa unayoongeza idadi pamoja. Kwa mfano kupata usomaji na kutekeleza ruhusa nambari unayohitaji ni 5, ili kupata ruhusa na kuandika namba ni 6 na kupata kuandika na kutekeleza ruhusa idadi ni 3.

Kumbuka unahitaji kutaja namba 3 kama sehemu ya amri ya chmod. Nambari ya kwanza ni kwa ruhusa ya mmiliki, namba ya pili ni kwa vibali vya kikundi na idadi ya mwisho ni kwa kila mtu mwingine.

Kwa mfano kupata idhini kamili kwa mmiliki, wasoma na kutekeleza ruhusa kwenye kikundi na hakuna vibali kwa mtu mwingine yeyote aina yafuatayo:

mtihani wa chmod 750

Ikiwa unataka kubadilisha jina la kikundi ambalo lina folda hutumia amri ya chgrp.

Kwa mfano, fikiria unataka kujenga saraka ambayo wahasibu wote katika kampuni yako wanaweza kufikia.

Awali ya yote, unda akaunti za kikundi kwa kuandika zifuatazo:

akaunti za kikundi

Ikiwa huna idhini sahihi ya kuunda kikundi unaweza kuhitaji kutumia sudo ili kupata pendeleo zaidi au kubadili akaunti na vibali vyema kwa kutumia amri .

Sasa unaweza kubadilisha kikundi kwa folda kwa kuandika zifuatazo:

chgrp akaunti

Kwa mfano:

mtihani wa akaunti ya chgrp

Ili kumpa yeyote katika kikundi cha akaunti kusoma, kuandika na kutekeleza upatikanaji pamoja na mmiliki lakini kusoma tu kwa kila mtu mwingine unaweza kutumia amri ifuatayo:

mtihani wa chmod 770

Ili kuongeza mtumiaji kwenye kikundi cha akaunti unaweza pengine unataka kutumia amri ifuatayo:

akaunti ya usermod -a -G

Amri ya juu huongeza kikundi cha akaunti kwenye orodha ya vikundi vya sekondari ambavyo mtumiaji anaweza kufikia.

Jinsi ya Kujenga Directory na Kuweka Ruhusa kwa wakati huo huo

Unaweza kuunda saraka na kuweka ruhusa ya saraka hiyo kwa wakati mmoja kwa kutumia amri ifuatayo:

mkdir-m777

Amri ya juu itaunda folda ambayo kila mtu anaweza kufikia. Ni nadra sana kwamba ungependa kuunda kitu chochote na ruhusa aina hii.

Unda Folda na Wazazi Wote Wanaohitajika

Fikiria unataka kujenga muundo wa saraka lakini hutaki kuunda folda ya kila mtu pamoja na njia na kufanya kazi yako chini ya mti.

Kwa mfano, huenda ukaunda folda kwa muziki wako kama ifuatavyo:

Itakuwa hasira ya kuwa na folda ya mwamba, kisha mshirika wa kauli na folda folda na kisha uunda folda ya rap na dre ya dre na halafu folda ya jazz na folisi ya louisjordan.

Kwa kubainisha kubadili zifuatazo unaweza kuunda folda zote za wazazi kwenye kuruka ikiwa hawako tayari.

mkdir -p

Kwa mfano, kuunda moja ya folda zilizoorodheshwa hapo juu jaribu amri ifuatayo:

mkdir -p ~ / muziki / mwamba / alicecooper

Kupata Uthibitisho kwamba Directory Ilifanywa

Kwa chaguo-msingi, amri ya mkdir haikuambii ikiwa saraka uliyounda iliundwa kwa ufanisi. Ikiwa hakuna makosa yanayoonekana basi unaweza kudhani ina.

Ikiwa unataka kupata pato zaidi ya verbose ili uweze kujua kilichoanzishwa kutumia chaguo zifuatazo.

mkdir -v

Pato itakuwa pamoja na mstari wa mkdir: saraka ya kuundwa / njia / kwa / jina la saraka .

Kutumia & # 34; mkdir & # 34; katika Hati ya Shell

Wakati mwingine unataka kutumia amri ya "mkdir" kama sehemu ya script shell. Kwa mfano, hebu angalia script ambayo inakubali njia. Wakati script inafanyika itaunda folda na kuongeza faili moja ya maandishi inayoitwa "hello".

#! / bin / bash

mkdir $ @

cd $ @

kugusa hello

Mstari wa kwanza unapaswa kuingizwa katika kila script unayoandika na hutumiwa kuonyesha kwamba hii ni kweli script ya BASH.

Amri ya "mkdir" hutumiwa kuunda folda. "$ @" ( Pia inajulikana kama vigezo vya pembejeo ) mwishoni mwa mstari wa 2 na wa 3 hubadilishwa na thamani unayotaja wakati unavyotumia script.

Amri ya "cd" inabadilika kwenye saraka unayofafanua na hatimaye amri ya kugusa inajenga faili tupu inayoitwa "hello".

Unaweza kujaribu script mwenyewe. Kwa kufanya hivyo kufuata maagizo haya:

  1. Fungua dirisha la terminal (bonyeza Alt na T unapaswa kufanya hivyo)
  2. Ingiza nano creathellodirectory.sh
  3. Weka katika amri zilizo juu zaidi kwenye mhariri
  4. Hifadhi faili kwa kushinikiza CTRL na O kwa wakati mmoja
  5. Toka faili hiyo kwa kushinikiza CTRL na X kwa wakati mmoja
  6. Badilisha ruhusa kwa kuandika chmod + x creathellodirectory.sh
  7. Tumia script kwa kuandika ./createhellodirectory.sh mtihani

Unapoendesha script ya script inayoitwa "mtihani" itaundwa na ukibadilika kwenye saraka hiyo ( mtihani wa cd) na uendesha orodha ya saraka ( ls), utaona faili moja inayoitwa "hello".

Hadi sasa ni nzuri lakini sasa jaribu kuendesha hatua ya 7 tena.

  1. Hitilafu itatokea ikisema kuwa folda tayari iko.

Kuna mambo mbalimbali tunayoweza kufanya ili kuboresha script. Kwa mfano, kama folda tayari ipo hatujali hasa kwa muda mrefu kama ipo.

#! / bin / bash

mkdir -p $ @

cd $ @

kugusa hello

Ikiwa utafafanua -p kama sehemu ya amri ya mkdir basi haitakuwa na hitilafu ikiwa folda tayari ipo lakini ikiwa haipo iko itaifanya.

Kama ilivyofanyika amri ya kugusa itaunda faili ikiwa haipo lakini iwapo ipo tu inabadilisha tarehe na muda uliopatikana.

Fikiria taarifa ya kugusa ilibadilishwa na kauli ya echo ambayo huandika maandiko kwa faili kama ifuatavyo:

#! / bin / bash

mkdir -p $ @

cd $ @

Echo "hello" >> hello

Ikiwa unatumia amri "./createhellodirectory.sh mtihani" mara kwa mara athari itakuwa kwamba faili inayoitwa "hello" katika saraka ya mtihani itakua kubwa na kubwa kwa mistari zaidi na zaidi na neno "hello" ndani yake.

Sasa, hii inaweza au inaweza kuwa kama ilivyopangwa lakini hebu tuseme kwa sasa kuwa hii sio hatua iliyohitajika. Unaweza kuandika mtihani ili kuhakikisha saraka haipo kabla ya kukimbia amri ya echo kama ifuatavyo.

#! / bin / bash

mkdir $ @ 2> / dev / null;

ikiwa [$? -aq 0]; basi

cd $ @

Echo "hello" >> hello

Utgång

fi

Sura ya juu ni njia yangu iliyopendekezwa ya kushughulikia kuundwa kwa folda. Amri ya mkdir inaunda folda iliyopitishwa kama parameter ya pembejeo lakini pato lolote linalotumwa kwa / dev / null (ambalo lina maana popote).

Mstari wa tatu hunasta hali ya pato ya amri ya awali ambayo ni "mkdir" kauli na ikiwa imefanikiwa itafanya kauli mpaka taarifa ya "fi" itafanyika.

Hii ina maana unaweza kuunda folda na kufanya mambo yote unayotaka ikiwa amri imefanikiwa. Ikiwa unataka kufanya kitu kingine ikiwa amri haifanikiwa basi unaweza kuingia tu kauli nyingine kama ifuatavyo:

#! / bin / bash

mkdir $ @ 2> / dev / null;

ikiwa [$? -aq 0]; basi
cd $ @
Echo "hello" >> hello
Utgång
mwingine
cd $ @
Echo "hello"> hello
Utgång
fi

Katika somo hapo juu kama kauli ya mkdir inafanya kazi basi kauli ya echo inatuma neno "hello" mwisho wa faili inayoitwa "hello" lakini ikiwa haipo faili mpya itaundwa "hujambo" kwa neno " hello "ndani yake.

Mfano huu sio hasa kwa sababu unaweza kufikia matokeo sawa tu kwa daima kuendesha echo "hello"> mstari wa hello . Kipengele cha mfano ni kuonyesha kwamba unaweza kukimbia amri ya "mkdir", ufiche pato la kosa, angalia hali ya amri ili kuona ikiwa imefanikiwa au sio na kisha kufanya amri moja ya amri ikiwa amri ya "mkdir" ilifanikiwa na seti nyingine ya amri ikiwa haikuwa.