See juhend näitab teile, kuidas luua Linuxis uusi käsuallika abil uusi kaustu või katalooge.
Käsk, mida te kataloogide loomiseks kasutate, on mkdir. See artikkel näitab Linuxi kataloogide loomise põhilist moodust ja kõiki olemasolevaid lülitusi.
Kuidas luua uut kataloogi
Kõige lihtsam viis uue kataloogi loomiseks on järgmine:
mkdir
Näiteks kui soovite luua kataloogi oma kodukataloogi nimega test, avage terminali aken ja veenduge, et olete oma kodukataloogis (kasutage käsku cd ~ ).
mkdiri test
Uue kataloogi õiguste muutmine
Pärast uue kausta loomist võite lubasid määrata nii, et ainult teatud kasutaja saaks sellele kausta juurde pääseda või et mõned inimesed saaksid kataloogis faile redigeerida, kuid teised on ainult lugenud.
Viimases osas näitasin ma, kuidas luua kataloogi test. Käsu ls käivitamine näitab teile selle kataloogi õigusi:
ls -lt
Võimalik, et teil on midagi sellist:
drwxr-xr-x 2 omanik 4096 Märts 9 19:34 test
Bitid, mida oleme huvitatud, on drwxr-xr-x omanik ja rühm
D ütleb meile, et test on kataloog.
Esimesed kolm tähte pärast d on omaniku õigused kataloogi, mille on määranud omaniku nimi.
- r tähistab lugeda
- w tähistab kirjutamist
- x tähistab käivitamist (mis tähendab antud juhul ka juurdepääsu sellele kausta)
Järgmised kolm märki on rühma nimega määratud faili rühma õigused. Valikud on jällegi r, w ja x. - tähendab, et puudub luba. Eespool toodud näites saab igaüks, kes kuulub gruppi, juurdepääsu kausta ja lugema failid, kuid ei saa seda kausta kirjutada.
Kolm viimast tähemärki on õigused, mida kõik kasutajad on ja nagu näete ülaltoodud näites, on need samad kui grupi õigused.
Faili või kausta õiguste muutmiseks võite kasutada chmod- käsku. Chmod käsk võimaldab määrata 3 numbrit, mis määravad õigused.
- lugeda õigusi = 4
- kirjuta õigused = 2
- teostada load = 1
Lubade segu saamiseks lisage numbrid koos. Näiteks selleks, et lugeda ja käivitada õigusi, on vajalik number 5, lugemis- ja kirjutamisõiguse saamiseks number 6 ja õiguste kirjutamise ja täitmise saamiseks number 3.
Pea meeles, et chmod käsu osana tuleb määrata 3 numbrit. Esimene number on omaniku õiguste jaoks, teine number on grupi õiguste jaoks ja viimane number on kõigile teistele.
Näiteks omaniku täielike õiguste saamiseks, grupi õiguste lugemiseks ja täitmiseks ning keegi ei anna õigusi, sisestage järgmised andmed:
chmod 750 test
Kui soovite kataloogi omava grupi nime muuta, kasutage käsku chgrp.
Näiteks kujutage ette, et soovite luua kataloogi, mida kõik teie ettevõtte raamatupidajad saavad kasutada.
Kõigepealt looge grupikontod, kirjutades järgmised andmed:
groupadd kontod
Kui sul ei ole õiget luba grupi loomiseks, peate võib-olla kasutama sudo lisavõimaluste saamiseks või su käsu abil kehtivate õigustega kontole üle minema.
Nüüd saate kausta gruppi muuta, sisestades järgmised andmed:
chgrp kontod
Näiteks:
chgrp kontode test
Selleks, et anda kellelegi kontode grupile lugeda, kirjutada ja käivitada juurdepääs, samuti omanik, kuid kõigile teistele saab seda lugeda ainult järgmise käsuga:
chmod 770 test
Kasutaja lisamiseks konto gruppi soovid tõenäoliselt kasutada järgmist käsku:
usermod -a -G kontod
Ülalolev käsu lisab kontode rühma teiseste rühmade loendisse, millele kasutajal on juurdepääs.
Kuidas luua kataloogi ja määrata õigused samal ajal
Saate luua kataloogi ja seadistada selle kataloogi õigused samaaegselt järgmise käsuga:
mkdir -m777
Ülalolev käsk loob kataloogi, millele kõigil on juurdepääs. On väga haruldane, et soovite selliseid lubasid luua.
Loo kaust ja kõik vanemad, mis on vajalikud
Kujutage ette, et soovite luua kataloogistruktuuri, kuid te ei soovi luua iga üksiku kausta viisil ja töötada oma puu alla.
Näiteks võite oma muusika kaustu luua järgmiselt:
- / home / music / rock / alicecooper
- / home / music / rock / queen
- / home / music / rap / drdre
- / home / muusika / jazz / louisjordan
Oleks tüütu luua rock kausta, seejärel alice cooper ja queen kausta ning seejärel luua rap-kaust ja dr dre kaust ja seejärel jazz kaust ja seejärel louisjordan kaust.
Kui määrate järgmise lüliti, saate luua kõik vanemate kaustad, kui need pole veel olemas.
mkdir -p
Näiteks ülal loetletud kaustade loomiseks proovige järgmist käsku:
mkdir-p ~ / music / rock / alicecooper
Kinnitus, et kataloog loodi
Vaikimisi ei ütle mkdir-käsk sulle, kas loodud kataloog loodi edukalt. Kui vead ei ilmu, võite eeldada, et see on olemas.
Kui soovite rohkem verbaalset väljundit, nii et saate teada, mis on loodud, kasutage järgmist lülitit.
mkdir -v
Väljund on mkdir: loodud directory / path / to / directoryname .
& # 34; mkdir & # 34; Shelli skriptis
Mõnikord soovid kasutada käsku "mkdir" shelliskripti osana. Näiteks vaatame skripti, mis võtab tee vastu. Kui skript käivitatakse, luuakse see kaust ja lisatakse üks tekstfail nimega "hello".
#! / bin / bash
mkdir $ @
cd $ @
puudutage tere
Esimene rida tuleks lisada igasse skripti, mida kirjutad ja mida kasutatakse, et näidata, et see on tõepoolest BASH-skript.
Käsku "mkdir" kasutatakse kausta loomiseks. 2. ja 3. rida lõpus asuv "$ @" ( tuntud ka kui sisendparameetrid ) asendatakse skripti käivitamisel määratud väärtusega.
Käsk "cd" muudab teie määratud kataloogi ja lõpuks teeb puute käsk tühja faili nimega "hello".
Võite skripti ise proovida. Selleks järgige neid juhiseid:
- Avage terminali aken (vajutage klahvi Alt ja T peaks seda tegema)
- Sisesta nano createhellodirectory.sh
- Sisestage redaktorisse ülaltoodud käskud
- Salvestage fail, vajutades CTRL ja O samal ajal
- Väljuge failist, vajutades CTRL ja X samal ajal
- Muutke õigusi, kirjutades chmod + x createhellodirectory.sh
- Käivitage skript, kirjutades ./createhellodirectory.sh test
Skripti käivitamisel luuakse kataloog "test" ja kui te selle kataloogi ( cd test) muutke ja käitate katalooginimekirjas ( ls), näete ühte faili nimega "hello".
Siiani nii hea, kuid nüüd proovige uuesti käivitada 7. samm.
- Ilmub veateade, mis kinnitab, et kaust on juba olemas.
Skripti täiustamiseks võime teha erinevaid asju. Näiteks kui kaust on juba olemas, siis me eriti ei hooli, kui see on olemas.
#! / bin / bash
mkdir-p $ @
cd $ @
puudutage tere
Kui määrate käsu mkdir osana -p, siis pole see ka siis, kui kaust on juba olemas, kuid kui seda pole, loob see ka selle.
Nagu juhtub, käivitab puudutus käsk faili, kui seda ei eksisteeri, kuid kui see eksisteerib, siis muudab see lihtsalt viimast kasutatud kuupäeva ja kellaaega.
Kujutage ette, et puuteavaldus asendati echo avaldusega, mis kirjutab teksti faili järgmiselt:
#! / bin / bash
mkdir-p $ @
cd $ @
echo "hello" >> hello
Kui käivitate käskluse "./createhellodirectory.sh test", siis taaskord ja jälle mõjutab see, et testkataloogis olev fail "tere" kasvab suuremaks ja suuremaks, lisades rohkem ja rohkem sõnu "hello".
Nüüd võib see olla või mitte olla nii ette nähtud, kuid ütleme nüüd, et see pole soovitud toiming. Saate kirjutada testi, et veenduda, et kataloogi ei eksisteeri enne, kui käivitage kaja käsu järgmiselt.
#! / bin / bash
mkdir $ @ 2> / dev / null;
kui [$? - eq 0]; siis
cd $ @
echo "hello" >> hello
väljumine
fi
Eespool toodud skript on minu eelistatud meetod kaustade loomise käitlemiseks. Käsk mkdir loob kausta, mis edastatakse sisendparameetrina, kuid mis tahes veaväljund saadetakse / dev / nullile (mis põhimõtteliselt tähendab kuhugi).
Kolmas rida kontrollib eelmise käsu, mis on "mkdir" avaldus, väljundi olekut ja kui see õnnestub, esitab see avaldused kuni fi-avalduse jõudmiseni.
See tähendab, et saate luua kausta ja täita kõik, mida soovid, kui käsk on edukas. Kui soovite midagi muud teha, kui käsk ei õnnestunud, võite lihtsalt sisestada muu avalduse järgmiselt:
#! / bin / bash
mkdir $ @ 2> / dev / null;
kui [$? - eq 0]; siis
cd $ @
echo "hello" >> hello
väljumine
muidu
cd $ @
echo "hello"> hello
väljumine
fi
Kui ülaltoodud skripti töötab mkdir-aruanne, saadab echo-avaldus sõna "hello" faili lõppu nimega "hello", samas kui selle olemasolu korral luuakse uus fail nimega "hello" sõnaga " tere "selles.
See näide ei ole eriti praktiline, sest võite saavutada samad tulemused lihtsalt alati, kui käidate kaja "hello"> hello line . Selle näite näide on näidata, et saate käivitada käsu "mkdir", peita veaväljund, kontrollida käsku olekut, et näha, kas see oli edukas või mitte, ja seejärel käivitada üks käskude komplekt, kui käsk "mkdir" oli edukas ja teine käskude komplekt, kui seda ei tehtud.