Како креирати директоријуме у Линуку помоћу "мкдир" наредбе

Овај водич ће вам показати како креирати нове фасцикле или директоријуме унутар Линука користећи командну линију.

Команда коју користите за креирање директорија је мкдир. Овај чланак вам показује основни начин креирања директорија у Линуку, као и покривање свих доступних прекидача.

Како креирати нови директориј

Најједноставнији начин креирања новог директоријума је следећи:

мкдир <име мапе>

На пример, ако желите да креирате директоријум под вашом кућном фасциклу под називом тест, отворите прозор терминала и провјерите да ли сте у свом кућном директоријуму (користите команду цд ~ ).

мкдир тест

Промена дозвола новог директоријума

Након креирања новог фолдера можда бисте желели да подесите дозволе тако да само одређени корисник може приступити фасцикли или тако да неки људи могу да уређују датотеке у фасцикли, а други имају само читање.

У последњем одељку показао сам вам како креирати директоријум под називом тест. Покретање лс наредбе ће вам показати дозволе за тај директоријум:

Је-ли

Шансе су да ћете имати нешто уз ове линије:

дрвкр-кр-к 2 овнер гроуп 4096 мар 9 19:34 тест

Битови које нас занима су дрвкр-кр-к власник и група

Д каже да је тест директоријум.

Прва три карактера после д су власничка дозвола за директоријум који је назначио име власника.

Следећа три карактера су групне дозволе за датотеку назначену називом групе. Опет су опције р, в и к. - значи да нема дозволе. У претходном примеру, било ко који припада групи може приступити фасцикли и прочитати датотеке, али не може писати у фасциклу.

Коначна три карактера су дозволе које имају сви корисници и као што видите у претходном примеру исти су исти као и дозволе групе.

Да бисте променили дозволе за датотеку или фасциклу, можете користити команду цхмод . Команда цхмод вам омогућава да наведете 3 бројеве који постављају дозволе.

Да бисте добили мешавину дозвола, додајте бројеве заједно. На примјер, да бисте добили читање и извршење дозвола потребан број је 5, да бисте добили дозволе за читање и писање број 6 и да бисте добили дозволе за упис и извршење, број је 3.

Запамтите да је потребно да наведете 3 бројеве као дио команде цхмод. Први број је за дозволе власника, други број за групне дозволе, а последњи број је за све остале.

На пример, да бисте добили потпуне дозволе власнику, прочитајте и извршите дозволе у ​​групи, а за било ког другог не дозволите да укуцате следеће:

цхмод 750 тест

Ако желите да промените име групе које поседује фасциклу користите команду цхгрп.

На пример, замислите да желите да креирате директоријум који сви рачуновође у вашој компанији могу приступити.

Пре свега, креирајте групне рачуне тако што ћете унети следеће:

гроупадд налоге

Ако немате исправну дозволу за креирање групе, можда ћете морати да користите судо да бисте добили додатне привилегије или пребацили на рачун са важећим дозволама користећи су наредбу .

Сада можете да промените групу за фасциклу тако што ћете унети следеће:

цхгрп налоге <фолдернаме>

На пример:

пробни налог на цхгрп-у

Да било ко у групи рачуна прочита, пише и извршава приступ, као и власника, али само за читање свима осталима можете користити следећу команду:

цхмод 770 тест

Да бисте додали корисника у групу рачуна, вероватно ћете желети да користите следећу команду:

усермод -а -Г налога <корисничко име>

Горња команда додјељује групу рачуна на листу секундарних група којима корисник има приступ.

Како креирати директориј и поставити дозволе истовремено

Можете креирати директориј и истовремено поставити дозволе за тај директоријум помоћу следеће наредбе:

мкдир -м777 <фолдернаме>

Горња команда ће креирати фасциклу којој сви имају приступ. Врло ретко је да желите да направите било шта са оваквим дозволама.

Креирајте фолдер и све родитеље који су потребни

Замислите да желите да креирате структуру директоријума, али не желите да креирате сваку појединачну фасциклу заједно са начином и да се крећете низ стабло.

На пример, можда ћете креирати фолдере за музику на следећи начин:

Било би непријатно кад је потребно креирати фасциклу, затим Алице цоопер и куеен фолдер, а затим креирати поп фолдер и др дре фасциклу, а затим јазз фолдер, а затим и фолдер лоуисјордан.

Спецификацијом следећег прекидача можете креирати све родитељске фасцикле уколико већ не постоје.

мкдир -п <фолдернаме>

На пример, да бисте креирали један од наведених мапа, покушајте следећу команду:

мкдир -п ~ / музика / рок / алицецоопер

Добијање потврде да је директор креиран

По правилу, мкдир наредба не говори да ли је директоријум који креирате успешно креиран. Ако се не појаве грешке онда можете претпоставити да има.

Ако желите да добијете више гломазних излаза тако да знате шта је креирано користите следећи прекидач.

мкдир -в <име мапе>

Излаз ће бити у линији мкдир: креиран директоријум / патх / то / дирецторинаме .

Коришћење & # 34; мкдир & # 34; у Схелл Сцрипту

Понекад ћете желети да користите команду "мкдир" као део схелл скрипте. На пример, погледајте скрипту која прихвата путању. Када се скрипт изврши, креираће се мапа и додати једну текстуалну датотеку под називом "здраво".

#! / бин / басх

мкдир $ @

цд $ @

додирни здраво

Прва линија треба да буде укључена у сваку скрипту коју пишете и користи се да покаже да је ово заиста БАСХ скрипта.

Команда "мкдир" се користи за креирање фасцикле. "$ @" ( Такође познат као улазни параметри ) на крају другог и трећег реда замјењује се вриједношћу коју одредите када покрећете скрипту.

Команда "цд" се мења у директоријум који одредите и на крају команда додира ствара празну датотеку под именом "хелло".

Можете искористити сценарио за себе. Да бисте то урадили следите ова упутства:

  1. Отворите прозор терминала (притисните Алт и Т треба то урадити)
  2. Унесите нано цреатехеллодирецтори.сх
  3. Упишите наредбе изнад у едитор
  4. Сачувајте датотеку притиском на ЦТРЛ и О истовремено
  5. Изађите из датотеке притиском на ЦТРЛ и Кс истовремено
  6. Промените дозволе уписивањем цхмод + к цреатехеллодирецтори.сх
  7. Покрените скрипту уписивањем теста ./цреатехеллодирецтори.сх

Када покренете скрипту биће креиран директоријум под називом "тест", а ако се пребаците у тај директоријум ( цд тест) и покренете листу директоријума ( лс), видећете једну датотеку која се зове "здраво".

До сада је тако добро, али сада покушајте поново за корак 7.

  1. Појавиће се грешка у којој се наводи да мапа већ постоји.

Постоје различите ствари које можемо учинити да побољшамо скрипту. На примјер, ако већ постоје фолдер, ми не брига све док то постоји.

#! / бин / басх

мкдир -п $ @

цд $ @

додирни здраво

Ако наведете -п као део команде мкдир онда неће погрешити ако директоријум већ постоји, али ако не постоји, креираће га.

Као што се дешава, додирна наредба ће створити датотеку ако не постоји, али ако постоји она једноставно допуњује последњи датум и вријеме приступа.

Замислите да је додирни израз замењен са ецхо изразом који пише текст у датотеку на следећи начин:

#! / бин / басх

мкдир -п $ @

цд $ @

ецхо "хелло" >> хелло

Ако покренете команду "./цреатехеллодирецтори.сх тест" опет и опет ће ефекат да ће датотека "хелло" у тест директоријуму постати све већа и већа са све више линија са речјем "хелло" у њему.

Сада, ово може бити или можда није тако намерно, али рецимо, за сада, то није жељена акција. Можете да напишете тест како бисте били сигурни да директорија не постоји пре него што покренете команду ецхо на следећи начин.

#! / бин / басх

мкдир $ @ 2> / дев / нулл;

ако [$? -ек 0]; онда

цд $ @

ецхо "хелло" >> хелло

излаз

фи

Наведени сценарио је мој омиљени метод за руковање стварањем фасцикли. Команда мкдир креира фасциклу која се преноси као улазни параметар, али сваки излаз грешке се шаље на / дев / нулл (што у суштини значи ништа).

Трећа линија провјерава статус излаза претходне команде која је израз "мкдир" и ако успије, извршиће изјаве све док се не достигне израз "фи".

То значи да можете креирати фасциклу и извршити све што желите ако је команда успешна. Ако желите нешто друго урадити ако команда није успјела онда једноставно можете унети другу изјаву на сљедећи начин:

#! / бин / басх

мкдир $ @ 2> / дев / нулл;

ако [$? -ек 0]; онда
цд $ @
ецхо "хелло" >> хелло
излаз
друго
цд $ @
ецхо "хелло"> Здраво
излаз
фи

У горе наведеном скрипту, ако изјава мкдир функционише онда ецхо изјава шаље ријеч "здраво" до краја датотеке зване "хелло", док ако не постоји нова датотека ће се креирати звана "здраво" ријечом " здраво "у њему.

Овај примјер није посебно практичан, јер можете постићи исте резултате једноставно тако што ћете увијек водити ехо "хелло"> хелло линију . Тачка примјера је да покажете да можете покренути наредбу "мкдир", сакрити излаз грешке, провјерити статус команде да бисте видјели да ли је успјешно или не, а затим извршите један скуп команди ако је команда "мкдир" био је успешан и још један скуп команди ако није.