Linux kataloglarini "mkdir" buyrug'i bilan yaratish

Ushbu qo'llanma sizga buyruq satrini ishlatib, Linuxda yangi papkalar yoki kataloglarni yaratish haqida ma'lumot beradi.

Kontaktlar yaratish uchun foydalanadigan buyruqlar mkdir. Ushbu maqolada Linuxda katalog yaratishning asosiy usuli va barcha mavjud kalitlarni qamrab oluvchi ko'rsatma berilgan.

Yangi katalog yaratish

Yangi katalog yaratishning eng oddiy usuli quyidagicha:

mkdir

Masalan, o'zingizning home jildingizning testi ostidagi katalog yaratmoqchi bo'lsangiz, terminal oynasini oching va sizning asosiy papkangizda ekanligingizga ishonch hosil qiling ( cd ~ buyrug'idan foydalaning ).

mkdir sinovi

Yangi katalog ruxsatini o'zgartirish

Yangi papka yaratilgandan so'ng, siz ruxsatni sozlashni xohlashingiz mumkin, shunda faqat ma'lum bir foydalanuvchi papkaga kira oladi yoki ba'zi odamlar papkaga fayllarni tahrir qilishi mumkin, ammo boshqalar faqat o'qishadi.

Oxirgi qismda men sinov deb ataladigan katalog yaratishni sizga ko'rsatdim. Ls buyrug'ini ishga tushirish sizga ushbu katalog uchun ruxsatlarni ko'rsatib beradi:

ls -lt

Shaxslar sizning bu yo'llar bo'ylab bir narsaga ega bo'lish ehtimoli bor:

drwxr-xr-x 2 egasi guruhi 4096 Mar 9 19:34 sinov

Biz qiziqqan bitlar drwxr-xr-x egasi va guruhidir

D, testning bir katalog ekanligini aytadi.

D dan keyin birinchi uchta belgi eganing nomi bilan ko'rsatilgan katalog uchun egasi ruxsatnomalaridir.

Keyingi uchta belgilar guruh nomi bilan belgilangan fayl uchun guruh ruxsatnomalaridir. Yana variantlar: r, w va x. Bu - izsiz yo'qolgan degan ma'noni anglatadi. Yuqoridagi misolda guruhga tegishli bo'lganlar papkaga kirishlari va fayllarni o'qishlari mumkin, ammo papkaga yozish imkoni yo'q.

Oxirgi uchta belgi - bu barcha foydalanuvchilarning ruxsatnomalari va yuqoridagi misolda ko'rib turganingizdek, guruh ruxsatnomalari bilan bir xil.

Agar fayl yoki papka uchun ruxsatni o'zgartirish uchun chmod buyrug'ini ishlatishingiz mumkin. Chmod buyrug'i ruxsatlarni belgilaydigan 3 ta raqamni belgilash imkonini beradi.

Ruxsatlarning aralashmasini olish uchun siz raqamlarni birgalikda qo'shasiz. Masalan, o'qishni va bajarishni talab qilish uchun kerakli raqam 5, o'qish va yozish huquqini olish uchun raqam 6, yozuvni yozish va bajarish uchun raqam 3 ni tashkil qiladi.

Chmod buyrug'ining bir qismi sifatida 3 ta raqamni belgilashni unutmang. Birinchi raqam egasi ruxsatnomalari uchun, ikkinchi raqam guruh ruxsatnomalari uchun va oxirgi raqam har bir kishi uchun.

Masalan, egasiga to'liq ruxsat olish, guruhdagi ruxsatlarni o'qish va bajarish va boshqalarga ruxsat berish uchun quyidagilarni yozing:

chmod 750 testi

Agar papkaga tegishli guruh nomini o'zgartirishni xohlasangiz, chgrp buyrug'idan foydalaning.

Misol uchun, kompaniyadagi barcha buxgalterlarga kira oladigan katalog yaratmoqchiman.

Avvalo, quyidagilarni yozib guruh hisoblarini yarating:

groupadd hisobi

Agar guruhni yaratishga to'g'ri ruxsat bo'lmasa, sudo-dan qo'shimcha imtiyozlarga ega bo'lish yoki su buyrug'idan foydalanib , tegishli ruxsatnomalarga ega bo'lgan hisobga o'tish kerak bo'ladi.

Endi siz guruhni quyidagi papkaga almashtirishingiz mumkin:

chgrp hisoblari

Masalan:

chgrp hisoblari testi

Hisoblar guruhida hech kimga ruxsat berish uchun o'qishni, yozishni va unga kirishni hamda egasi bilan birgalikda foydalanishni, ammo hamma uchun faqat o'qish uchun quyidagi buyruqni ishlatishingiz mumkin:

chmod 770 testi

Hisoblar guruhiga foydalanuvchi qo'shish uchun siz quyidagi buyruqni ishlatishni xohlaysiz:

usermod -a -G hisoblari

Yuqoridagi buyruqlar foydalanuvchi guruhiga kira oladigan ikkinchi guruhlar ro'yxatiga qo'shiladi.

Qanday qilib bir katalog yaratish va bir vaqtda ruxsat o'rnatish

Katalog yaratishingiz va shu katalog uchun ruxsatlarni quyidagi buyruqdan foydalanib belgilashingiz mumkin:

mkdir -m777

Yuqoridagi buyruq har bir kishi uchun ruxsat bo'lgan papka yaratadi. Bunday turdagi ruxsatnomalar bilan biror narsa yaratish istagingiz juda kam.

Papkalarni va kerakli barcha ota-onalarni yaratish

Bir katalog strukturasini yaratmoqchi bo'lganingizni tasavvur qiling-a, ammo har bir jildni yo'l bilan birga yaratishni va daraxtdan pastga tushishni xohlamaysizmi.

Misol uchun, sizning musiqangiz uchun papkalarni quyidagi kabi yaratishingiz mumkin:

Keyinchalik rock papkasini, keyin alice cooper va malika papkasini yaratish va keyinchalik rap papkasini va dr dre papkasini va keyinchalik jazz papkasini va keyin louisjordan papkasini yaratish kerak bo'ladi.

Quyidagi kalitni belgilab, siz allaqachon mavjud bo'lmasa, barcha ota-papkalarni tezda yaratishingiz mumkin.

mkdir-p

Masalan, yuqorida sanab o'tilgan papkalardan birini yaratish uchun quyidagi buyruqni bajaring:

mkdir -p ~ / musiqa / rock / alicecooper

Kontaktlar yaratilganligini tasdiqlash

Odatiy bo'lib, mkdir buyrug'i siz yaratgan katalog muvaffaqiyatli yaratilganmi, sizga xabar bermaydi. Hech qanday xatolik yuzaga kelsa, uni qabul qilishingiz mumkin.

Agar siz yaratilgan narsani bilmoqchi bo'lsangiz, quyida keltirilgan kalitdan foydalaning.

mkdir -v

Chiqish mkdir satrlari bo'yida bo'ladi : yaratilgan katalog / path / to / directoryname .

& # 34; mkdir & # 34; Shell skriptida

Ba'zan siz "mkdir" buyrug'ini qobiq skriptining bir qismi sifatida ishlatishni xohlaysiz. Masalan, yo'lni qabul qiladigan buyruqni ko'rib chiqaylik. Buyruqlar bajarilsa, papka yaratiladi va "salom" deb nomlangan bitta matnli fayl qo'shiladi.

#! / Bin / bash

mkdir $ @

CD $ @

salom

Birinchi satr siz kiritgan har bir skriptga kiritilishi kerak va bu aslida BASH skripti ekanligini ko'rsatish uchun ishlatiladi.

"Mkdir" buyrug'i papkani yaratish uchun ishlatiladi. 2 va 3-satr oxiridagi "$ @" ( kirish parametrlari deb ham ataladi ) buyrug'i ishlayotganingizda ko'rsatilgan qiymat bilan almashtiriladi.

"CD" buyrug'i siz ko'rsatgan katalogga aylanadi va nihoyat sensorli buyruq "salom" deb nomlangan bo'sh fayl yaratadi.

Siz o'zingiz uchun skriptni sinab ko'rishingiz mumkin. Buning uchun quyidagi ko'rsatmalarga amal qiling:

  1. Terminal oynasini oching (Alt va T tugmalarini bosing)
  2. Nano- creationhellodirectory.sh-ga kiring
  3. Yuqoridagi buyruqlarni muharrirga kiriting
  4. Faylni bir vaqtning o'zida CTRL va O ni bosib saqlang
  5. CTRL va X tugmalarini bir vaqtning o'zida bosish orqali fayldan chiqing
  6. Chmod + x createhellodirectory.sh yozib turishni o'zgartiring
  7. Skriptni ishga tushirish ./createhellodirectory.sh testi

Buyruq faylini ishga tushirganingizda "sinov" deb nomlanadigan katalog tuziladi va agar ushbu katalogga ( CD testi) o'tilsa va katalog ro'yxati ( ls) ishlatilsa, "salom" deb nomlangan bitta faylni ko'rasiz.

Hozirgacha juda yaxshi, lekin endi 7-qadamni qayta harakat qilib ko'ring.

  1. Jild allaqachon mavjud ekanligini bildirgan xato paydo bo'ladi.

Skriptni takomillashtirish uchun biz qiladigan har xil narsalar mavjud. Misol uchun, agar papka allaqachon mavjud bo'lsa, biz mavjud ekanmiz, shuncha ahamiyatga ega emasmiz.

#! / Bin / bash

mkdir -p $ @

CD $ @

salom

Agar siz mkdir buyrug'ining bir qismi sifatida -p-ni belgilasangiz, papka allaqachon mavjud bo'lsa, xato bo'lmaydi, lekin mavjud bo'lmasa, uni yaratadi.

Tinglash buyrug'i mavjud bo'lmaganda faylni yaratadi, agar mavjud bo'lsa, u oxirgi marta kiritilgan sana va vaqtni o'zgartiradi.

Tasodifiy iboralar faylga matnni quyidagi tarzda yozadigan echo bayonotiga almashtirilganini tasavvur qiling:

#! / Bin / bash

mkdir -p $ @

CD $ @

echo "salom" >> salom

Agar siz "./createhellodirectory.sh test" buyrug'ini ishlatsangiz, test kat-da "salom" deb nomlangan faylda "salom" so'zi bilan ko'proq va ko'proq satrlar paydo bo'ladi.

Endi, bu maqsadli bo'lishi mumkin yoki bo'lmasligi mumkin, ammo hozir bu istalgan ish emasligini aytaylik. Echo buyrug'ini quyidagi tartibda ishlatishdan oldin katalog mavjud emasligiga ishonch hosil qilish uchun test yozishingiz mumkin.

#! / Bin / bash

mkdir $ @ 2> / dev / null;

agar [$? -eq 0]; keyin

CD $ @

echo "salom" >> salom

Chiqish

fi

Yuqoridagi skript papkalar yaratilishini boshqarish uchun afzal qilingan uslubdir. Mkdir buyrug'i kirish parametri sifatida qabul qilingan papkani yaratadi, lekin har qanday xato chiqishi / dev / null (aslida hech bir joyni bildirmaydi) ga yuboriladi.

Uchinchi qator oldingi buyruqning chiqish maqomini tekshiradi, ya'ni "mkdir" iborasi va agar u "fi" bayonotiga kelguniga qadar so'zlarni amalga oshirsa.

Bu sizning papkangizni yaratishingiz va buyruq muvaffaqiyatli bo'lganda kerakli narsalarni bajarishingiz mumkin degan ma'noni anglatadi. Agar buyruq muvaffaqiyatli bo'lmasa, boshqa biror narsa qilishni istasangiz, quyidagi kabi oddiygina bir else so'zini kiritishingiz mumkin:

#! / Bin / bash

mkdir $ @ 2> / dev / null;

agar [$? -eq 0]; keyin
CD $ @
echo "salom" >> salom
Chiqish
boshqa
CD $ @
echo "salom"> salom
Chiqish
fi

Yuqoridagi skriptda mkdir iborasi ishlatilsa, aks sado "fayl" so'zi "salom" deb nomlangan bo'lsa, "salom" so'zini yuboradi, agar u mavjud bo'lmasa, "hello" so'zi bilan " salom "deb nomlangan.

Bu misol ayniqsa amaliy emas, chunki siz har doim "salom"> salom yo'lini yoqish bilan bir xil natijalarga erisha olasiz. Misolning maqsadi, siz "mkdir" buyrug'ini ishlatish, xato chiqimini yashirish, buyruqlar holatini tekshirish uchun muvaffaqiyatli yoki yo'qligini tekshirish va "mkdir" buyrug'i muvaffaqiyatli bo'ldi va boshqa buyruqlar to'plami bo'lmasa edi.