Როგორ შექმნათ დირექტორიები Linux- ში "mkdir" ბრძანებით

ეს სახელმძღვანელო გაჩვენებთ თუ როგორ უნდა შექმნათ ახალი საქაღალდეები ან დირექტორიები Linux- ის გამოყენებით ბრძანების გამოყენებით.

ბრძანება, რომელიც იყენებთ დასტების შექმნას, არის mkdir. ეს სტატია გიჩვენებთ ძირითად გზას, რათა შეიქმნას დირექტორიები Linux- ში, ასევე მოიცავს ყველა შესაძლო კონცენტრატს.

როგორ შევქმნათ ახალი დირექტორია

ახალი დირექტორია შექმნის უმარტივეს გზას:

mkdir

მაგალითად, თუ გსურთ შექმნას დირექტორია თქვენი სახლის საქაღალდეში მოუწოდა ტესტი, გახსნა ტერმინალის ფანჯარა და დარწმუნდით, რომ თქვენ ხართ თქვენს სახლში საქაღალდეში (გამოიყენეთ cd ~ ბრძანება ).

mkdir ტესტი

შეცვალეთ ახალი დირექტორია

ახალი ფოლდერის შექმნის შემდეგ შესაძლოა დაგჭირდეთ ნებართვების დაყენება, რომ მხოლოდ გარკვეული მომხმარებელს შეეძლება საქაღალდეში წვდომა, ანუ ზოგიერთ ადამიანს შეეძლება ფაილების რედაქტირება, მაგრამ სხვები მხოლოდ წაიკითხა.

ბოლო მონაკვეთში, მე ვაჩვენე, თუ როგორ უნდა შეიქმნას დირექტორია მოუწოდა ტესტი. მიმდინარე ls ბრძანება გაჩვენებთ ნებართვებს ამ დირექტორიაში:

ls -lt

შანსი გაქვთ ამ ხაზის გასწვრივ:

drwxr-xr-x 2 მფლობელი ჯგუფი 4096 მარ 9 19:34 ტესტი

ბიტი ჩვენ დაინტერესებულია drwxr-xr-x მფლობელი და ჯგუფი

D გვეუბნება, რომ ტესტი არის დირექტორია.

პირველი სამი პერსონაჟი D- ის შემდეგ მფლობელი მფლობელის მიერ მითითებულ დირექტორიაში ნებადართულია.

მომდევნო სამი სიმბოლოა ჯგუფის სახელით განსაზღვრული ჯგუფის ნებართვა. კვლავ ვარიანტები r, w და ​​x. - ნიშნავს, რომ ნებართვა არ არსებობს. ზემოთ მოყვანილ მაგალითში, რომელიც ეკუთვნის ჯგუფს, შეგიძლიათ გამოიყენოთ ფოლდერი და წაიკითხოს ფაილი, მაგრამ ვერ იწერება ფოლდერში.

საბოლოო სამი სიმბოლო არის ნებართვა, რომელსაც ყველა მომხმარებელი ჰყავს და, როგორც ხედავთ ზემოთ მოცემულ მაგალითში, იგივეა, რაც ჯგუფის ნებართვაა.

ფაილის ან საქაღალდისთვის ნებართვების შესაცვლელად შეგიძლიათ გამოიყენოთ chmod ბრძანება. Chmod ბრძანება საშუალებას მოგცემთ მიუთითოთ 3 რიცხვი, რომლებიც დადგენილია ნებართვები.

ნებართვების ნარევი მიიღოთ ნომრები ერთად. მაგალითად, წაიკითხე და შეასრულოთ ნებართვა, საჭიროა 5-ის ნომერი, რომ მიიღოთ ნებართვა წაკითხული და დაწეროთ ნებართვა, რომ ნომერი 6 არის და დავწეროთ და შეასრულოთ ნებართვა ნომერი 3.

გახსოვდეთ, თქვენ უნდა მიუთითოთ 3 რიცხვი, როგორც chmod ბრძანების ნაწილი. პირველი ნომერი არის მესაკუთრის ნებართვებისთვის, მეორე ნომერი არის ჯგუფის ნებართვებისთვის და ბოლო ნომერი ყველასთვის არის განკუთვნილი.

მაგალითად, მფლობელზე სრული ნებართვის მისაღებად, ჯგუფში ნებართვების წაკითხვისა და შესრულება და არავითარი ნებართვა არ შეიტანება შემდეგნაირად:

chmod 750 ტესტი

თუ გსურთ შეცვალოთ ჯგუფის სახელი, რომელიც ფლობს ფოლკს გამოიყენებს chgrp ბრძანება.

მაგალითად, წარმოიდგინეთ, რომ შექმნათ დირექტორია, რომ ყველა ბუღალტერი თქვენს კომპანიას შეუძლია.

უპირველეს ყოვლისა, ჯგუფის ანგარიშების შექმნა შემდეგნაირად აკრეფით:

groupadd ანგარიშები

თუ თქვენ არ გაქვთ სწორი ნებართვა, რომ შექმნათ ჯგუფი, თქვენ შეიძლება გამოვიყენოთ sudo დამატებითი პრივილეგიების მოსაპოვებლად ან შეცვალოთ ანგარიშზე სწორი ნებართვები გამოყენებით su ბრძანება .

ახლა თქვენ შეგიძლიათ შეცვალოთ ჯგუფი ფოლდერისთვის, რათა შეიტანოთ შემდეგი:

chgrp ანგარიშები

მაგალითად:

chgrp ანგარიშების ტესტირება

ანგარიშის ჯგუფში წაკითხვის, დაწერის, დამონტაჟებისა და დამქირავებლისთვის ვინმეს გადასცეს, მაგრამ ყველასთვის წაკითხული მხოლოდ თქვენ შეგიძლიათ გამოიყენოთ შემდეგი ბრძანება:

chmod 770 ტესტი

მომხმარებლის ანგარიშის ჯგუფში დაამატოთ ალბათ სასურველია შემდეგი ბრძანება:

usermod -a -G ანგარიშები

აღნიშნული ბრძანება ანგარიშების ჯგუფს ანიჭებს მომხმარებელთა მეორადი ჯგუფების ჩამონათვალში.

როგორ შევქმნათ დირექტორია და დააყენეთ ნებართვა ამავე დროს

თქვენ შეგიძლიათ შექმნათ დირექტორია და დააყენოთ ნებართვა რომ დირექტორიაში იმავე დროს გამოყენებით შემდეგი ბრძანება:

mkdir -m777

ზემოთ ბრძანება შექმნის საქაღალდეში, რომელსაც ყველას აქვს უფლება. ძალიან იშვიათია, რომ ამგვარი ნებართვით რამე შექმნა.

შექმნა საქაღალდე და ნებისმიერი მშობელი, რომლებიც საჭიროა

წარმოიდგინეთ, რომ შენ შექმენით სტრუქტურის სტრუქტურა, მაგრამ არ გინდა, რომ შექმნათ თითოეული ფოლდერი ერთად გზაზე და მუშაობთ თქვენს გზაზე ხეზე.

მაგალითად, თქვენ შეიძლება შექმნას ფოლდერები თქვენი მუსიკა შემდეგნაირად:

ეს იქნებოდა შემაშფოთებელი, რომ შექმნათ როკ საქაღალდეში, მაშინ alice cooper და დედოფალი საქაღალდეში და შემდეგ შექმნა rap საქაღალდეში და dr dre საქაღალდეში და შემდეგ ჯაზის საქაღალდეში და შემდეგ louisjordan საქაღალდეში.

თუ მითითებულია შემდეგი გადართვისას შეგიძლიათ შექმნათ ყველა მშობელი საქაღალდე, თუ ისინი არ არსებობენ.

mkdir -p

მაგალითად, ზემოთ ჩამოთვლილი ერთ-ერთი ფოლდერის შესაქმნელად გამოიყენეთ შემდეგი ბრძანება:

mkdir -p ~ / music / rock / alicecooper

მიღება დადასტურება, რომ დირექტორია შეიქმნა

ჩვეულებრივ, mkdir ბრძანება არ გეტყვით, თუ შექმნის დირექტორია წარმატებით შეიქმნა. თუ შეცდომები არ გამოჩნდება მაშინ შეიძლება იფიქრო.

თუ გსურთ მეტი verbose გამომავალი ისე, რომ თქვენ იცით, რა შეიქმნა გამოიყენოს შემდეგი შეცვლა.

mkdir -v

გამომავალი იქნება mkdir ხაზების გასწვრივ : შეიქმნა დირექტორია / გზა / დან / directoryname .

გამოყენება & # 34; mkdir & # 34; Shell Script- ში

ზოგჯერ თქვენ გსურთ გამოიყენოთ "mkdir" ბრძანება, როგორც ნაწილი ჭურვი სცენარი. მაგალითად, მოდით შევხედოთ სკრიპტს, რომელიც იღებს გზას. სკრიპტის შესრულებისას იგი ქმნის საქაღალდეში და დაამატეთ ერთი ტექსტური ფაილი "ჰელო".

#! / bin / bash

mkdir $ @

cd $ @

შეხება მიესალმები

პირველი ხაზი უნდა შეიტანოთ ყველა სკრიპტში, რომლითაც დაწერეთ და გამოიყენება იმის ჩვენება, რომ ეს მართლაც ბაშის სცენარია.

"Mkdir" ბრძანება გამოიყენება საქაღალდის შესაქმნელად. მე -2 და მე -3 ხაზის ბოლოს "$ @" ( აგრეთვე შეყვანის პარამეტრების სახელი ) შეიცვალა იმ ღირებულებით, რომლებიც მითითებულია სკრიპტის გაშვებისას.

"Cd" ბრძანება ცვლის დირექტორიაში მითითებას და საბოლოოდ შეხება ბრძანება ქმნის ცარიელი ფაილის სახელწოდებით "hello".

თქვენ შეგიძლიათ სცადოთ სკრიპტი თქვენთვის. ამისათვის მიჰყევით ამ ინსტრუქციებს:

  1. გახსენით ტერმინალის ფანჯარა (დააჭირეთ Alt და T უნდა გააკეთოთ)
  2. შეიყვანეთ nano createhellodirectory.sh
  3. ჩაწერეთ ბრძანებები რედაქტორის მეშვეობით
  4. შენახვა ფაილი CTRL და O დაჭერით ამავე დროს
  5. გასვლა ფაილი ამავე დროს CTRL და X დაჭერით
  6. ცვლილებების შეტანა chmod + x createhellodirectory.sh- ით აკრეფით
  7. სკრიპტის ამოქმედება აკრეფით ./createhellodirectory.sh ტესტი

სკრიპტის გაშვებისას შეიქმნება "ტესტი", რომელიც შეიქმნება და თუ შეცვლით ამ დირექტორიაში ( cd test) და ჩაიტვირთეთ დირექტორიაში ( ls), ნახავთ ერთი ფაილის სახელწოდებით "hello".

ჯერჯერობით კარგი, მაგრამ ახლა სცადეთ გაშვებული ნაბიჯი 7 ერთხელ.

  1. შეცდომა გამოჩნდება იმის შესახებ, რომ საქაღალდე უკვე არსებობს.

არსებობს სხვადასხვა რამ, რაც შეგვიძლია გავაკეთოთ სკრიპტის გასაუმჯობესებლად. მაგალითად, თუ საქაღალდე უკვე არსებობს, ჩვენ არ ვმუშაობთ, რადგან ის არსებობს.

#! / bin / bash

mkdir -p $ @

cd $ @

შეხება მიესალმები

თუ მიუთითეთ -p, როგორც mkdir ბრძანების ნაწილი, მაშინ ეს შეცდომა არ მოხდება, თუ საქაღალდე უკვე არსებობს, მაგრამ თუ იგი არ არსებობს, შექმნა ეს.

როგორც ხდება, სენსორული ბრძანება შექმნის ფაილს, თუ იგი არ არსებობს, მაგრამ თუ ის არსებობს, უბრალოდ შეცვლის ბოლო დროს და დროს.

წარმოიდგინეთ, რომ სენსორული ჩანაწერი შეიცვალა echo- ს განცხადებით, რომელიც ტექსტს შემდეგნაირად წერს:

#! / bin / bash

mkdir -p $ @

cd $ @

ეხო "გამარჯობა" >> გამარჯობა

თუ თქვენ აწარმოებს ბრძანება "./createhellodirectory.sh ტესტი" ისევ და ისევ ეფექტი იქნება, რომ ფაილი "hello" in test დირექტორია გაიზრდება უფრო დიდი და უფრო მეტი ხაზებით სიტყვა "გამარჯობა" მასში.

ახლა, შეიძლება ეს შეიძლება იყოს ან არ იყოს დაგეგმილი, მაგრამ ახლა ვთქვათ, რომ ეს არ არის სასურველი ქმედება. თქვენ შეგიძლიათ ჩაწეროთ გამოცდა, რათა დარწმუნდეთ, რომ დირექტორია არ არსებობს, სანამ ამოიწერეთ echo ბრძანება.

#! / bin / bash

mkdir $ @ 2> / dev / null;

თუ [$? -eq 0]; მაშინ

cd $ @

ეხო "გამარჯობა" >> გამარჯობა

გასასვლელი

fi

ზემოთ მოყვანილი სკრიპტი არის ჩემი სასურველი მეთოდი საქაღალდეების შექმნაზე. Mkdir ბრძანება ქმნის საქაღალდეში, რომელიც შეყვანილია როგორც შეყვანის პარამეტრი, მაგრამ ნებისმიერი შეცდომის გამომუშავება იგზავნება / dev / null (რაც არსებითად არ ნიშნავს).

მესამე ხაზი ამოწმებს წინა ბრძანების გამომუშავების სტატუსს, რომელიც "მდდირის" განცხადებას წარმოადგენს და, თუ ის წარმატებას მიაღწევს, შეასრულებს განცხადებებს, სანამ "ფი" ანგარიშს მიაღწევს.

ეს იმას ნიშნავს, რომ თქვენ შეგიძლიათ შექმნათ ფოლდერი და შეასრულოთ ყველაფერი რაც გსურთ, თუ ბრძანება წარმატებულია. თუ გსურთ რაიმე სხვა რამის გაკეთება, თუ ბრძანება არ იყო წარმატებული, შეგიძლიათ უბრალოდ სხვა განცხადებაში შევიტანოთ შემდეგი:

#! / bin / bash

mkdir $ @ 2> / dev / null;

თუ [$? -eq 0]; მაშინ
cd $ @
ეხო "გამარჯობა" >> გამარჯობა
გასასვლელი
სხვა
cd $ @
echo "hello"> გამარჯობა
გასასვლელი
fi

ზემოთ სკრიპტში, თუ mkdir statement works მაშინ echo statement აგზავნის სიტყვა "hello" დასასრულს ფაილი მოუწოდა "hello" ხოლო თუ იგი არ არსებობს ახალი ფაილი შეიქმნება მოუწოდა "hello" ერთად სიტყვა " გამარჯობა "მასში.

ეს მაგალითი არ არის განსაკუთრებით პრაქტიკული, რადგან თქვენ შეგიძლიათ მიაღწიოთ იმავე შედეგებს, უბრალოდ, ელო "hello"> hello line . მაგალითის მაგალითია იმის ჩვენება, რომ შეგიძლიათ "mkdir" ბრძანების გაშვება, შეცდომის გამოტანის დამალვა, შეამოწმოთ ბრძანების სტატუსი, თუ ის წარმატებული იყო თუ არა და შემდეგ შეასრულებს ერთ კომპლექტი ბრძანებებს, თუ "mkdir" ბრძანება იყო წარმატებული და სხვა ბრძანებები, თუ ეს არ იყო.