Bagaimana Membuat Direktori di Linux dengan Perintah "mkdir"

Panduan ini akan menunjukkan kepada anda cara membuat folder atau direktori baru dalam Linux menggunakan baris arahan.

Perintah yang anda gunakan untuk membuat direktori adalah mkdir. Artikel ini menunjukkan cara asas untuk membuat direktori di Linux serta meliputi semua suis yang tersedia.

Cara Buat Direktori Baru

Cara paling mudah untuk mencipta direktori baru adalah seperti berikut:

mkdir

Sebagai contoh, jika anda ingin membuat direktori di bawah folder rumah anda yang disebut ujian, buka tetingkap terminal dan pastikan anda berada di folder rumah anda (gunakan perintah cd ~ ).

ujian mkdir

Mengubah Kebenaran Direktori Baru

Selepas membuat folder baru, anda mungkin ingin menetapkan keizinan supaya hanya pengguna tertentu boleh mengakses folder atau supaya sesetengah orang boleh mengedit fail dalam folder tetapi yang lain hanya membaca.

Dalam bahagian terakhir, saya menunjukkan kepada anda cara membuat direktori yang dipanggil ujian. Running arahan ls akan menunjukkan kepada anda keizinan untuk direktori itu:

ls -lt

Kemungkinan anda akan mempunyai sesuatu di sepanjang baris ini:

drwxr-xr-x 2 pemilik kumpulan 4096 Mar 9 19:34 ujian

Bit yang kami minati ialah pemilik dan kumpulan drwxr-xr-x

D memberitahu kita bahawa ujian adalah direktori.

Tiga aksara pertama selepas d adalah kebenaran pemilik untuk direktori yang ditentukan oleh nama pemiliknya.

Tiga aksara seterusnya ialah kebenaran kumpulan untuk fail yang ditentukan oleh nama kumpulan. Lagi pilihan ialah r, w, dan x. - bermakna bahawa ada kebenaran yang hilang. Dalam contoh di atas sesiapa yang dimiliki oleh kumpulan itu boleh mengakses folder dan membaca fail tetapi tidak dapat menulis ke folder.

Tiga aksara terakhir adalah kebenaran yang diberikan oleh semua pengguna dan seperti yang anda lihat dalam contoh di atas ini adalah sama dengan keizinan kumpulan.

Untuk menukar keizinan untuk fail atau folder, anda boleh menggunakan perintah chmod . Perintah chmod membolehkan anda menentukan 3 nombor yang menetapkan keizinan.

Untuk mendapatkan campuran kebenaran, anda menambah nombor bersama-sama. Sebagai contoh untuk mendapatkan kebenaran membaca dan melaksanakan bilangan yang anda perlukan adalah 5, untuk mendapatkan kebenaran membaca dan menulis nombor itu adalah 6 dan untuk mendapatkan menulis dan melaksanakan kebenaran nombornya ialah 3.

Ingat, anda perlu menentukan nombor 3 sebagai sebahagian daripada perintah chmod. Nombor pertama adalah untuk keizinan pemilik, nombor kedua adalah untuk keizinan kumpulan dan nombor terakhir adalah untuk orang lain.

Sebagai contoh untuk mendapatkan keizinan penuh pada pemilik, baca dan laksanakan kebenaran pada kumpulan dan tidak ada kebenaran untuk orang lain taip perkara berikut:

ujian chmod 750

Jika anda ingin menukar nama kumpulan yang memiliki folder gunakan perintah chgrp.

Sebagai contoh, bayangkan anda ingin membuat direktori yang semua akauntan dalam syarikat anda boleh diakses.

Pertama sekali, buat akaun kumpulan dengan menaip yang berikut:

akaun kumpulan

Jika anda tidak mempunyai kebenaran yang betul untuk membuat kumpulan anda mungkin perlu menggunakan sudo untuk mendapatkan keistimewaan tambahan atau beralih ke akaun dengan kebenaran sah menggunakan perintah su .

Sekarang anda boleh menukar kumpulan untuk folder dengan menaip yang berikut:

akaun chgrp

Sebagai contoh:

ujian akaun chgrp

Untuk memberi sesiapa dalam kumpulan akaun membaca, menulis dan laksanakan akses serta pemilik tetapi hanya baca-baca kepada orang lain, anda boleh menggunakan arahan berikut:

ujian chmod 770

Untuk menambah pengguna ke dalam kumpulan akaun, anda mungkin ingin menggunakan arahan berikut:

usermod -a -G akaun

Perintah di atas menambahkan kumpulan akaun ke senarai kumpulan sekunder yang pengguna mempunyai akses kepada.

Cara Buat Direktori dan Tetapkan Kebenaran pada Masa yang Sama

Anda boleh membuat direktori dan tetapkan keizinan untuk direktori itu pada masa yang sama menggunakan arahan berikut:

mkdir -m777

Perintah di atas akan membuat folder yang semua orang mempunyai akses kepada. Sangat jarang anda ingin membuat apa-apa dengan izin semacam ini.

Buat Folder dan Mana-mana Ibu Bapa Yang Diperlukan

Bayangkan anda ingin mencipta struktur direktori tetapi anda tidak mahu membuat setiap folder bersama dengan cara dan jalankan ke bawah pokok.

Sebagai contoh, anda mungkin membuat folder untuk muzik anda seperti berikut:

Ia akan menjengkelkan untuk membuat folder rock, kemudian folder alice cooper dan ratu dan kemudian buat folder rap dan folder dr dre dan kemudian folder jazz dan kemudian folder louisjordan.

Dengan menentukan suis berikut, anda boleh membuat semua folder induk dengan cepat jika mereka tidak lagi wujud.

mkdir -p

Sebagai contoh, untuk membuat salah satu folder yang disenaraikan di atas, cuba perintah berikut:

mkdir -p ~ / muzik / rock / alicecooper

Mendapatkan Pengesahan Bahawa Direktori Dibuat

Secara lalai, arahan mkdir tidak memberitahu anda jika direktori yang anda buat berjaya dibuat. Sekiranya tiada kesilapan muncul maka anda boleh menganggapnya.

Jika anda ingin mendapatkan lebih banyak output verbose supaya anda tahu apa yang telah dibuat menggunakan suis berikut.

mkdir -v

Output akan berada di sepanjang garis mkdir: direktori yang dibuat / path / ke / directoryname .

Menggunakan & # 34; mkdir & # 34; dalam Skrip Shell

Kadang-kadang anda akan mahu menggunakan arahan "mkdir" sebagai sebahagian daripada skrip shell. Sebagai contoh, mari kita lihat skrip yang menerima laluan. Apabila skrip dilaksanakan, ia akan membuat folder dan menambah fail teks tunggal yang dipanggil "halo".

#! / bin / bash

mkdir $ @

cd $ @

sentuh hello

Baris pertama harus disertakan dalam setiap skrip yang anda tulis dan digunakan untuk menunjukkan bahawa ini memang skrip BASH.

Perintah "mkdir" digunakan untuk membuat folder. "$ @" ( Juga dikenali sebagai parameter input ) pada akhir baris ke-2 dan ke-3 digantikan dengan nilai yang anda nyatakan semasa menjalankan skrip.

Perintah "cd" berubah ke direktori yang anda tentukan dan akhirnya arahan sentuhan mencipta fail kosong yang dipanggil "hello".

Anda boleh mencuba skrip untuk diri sendiri. Untuk berbuat demikian ikuti arahan ini:

  1. Buka tetingkap terminal (tekan Alt dan T harus melakukannya)
  2. Masukkan nano createhellodirectory.sh
  3. Taipkan arahan di atas ke dalam editor
  4. Simpan fail dengan menekan CTRL dan O pada masa yang sama
  5. Keluar fail dengan menekan CTRL dan X pada masa yang sama
  6. Ubah keizinan dengan menaip chmod + x createhellodirectory.sh
  7. Jalankan skrip dengan menaip ./createhellodirectory.sh test

Apabila anda menjalankan skrip direktori yang dipanggil "test" akan dibuat dan jika anda menukar ke direktori itu ( cd test) dan menjalankan direktori direktori ( ls), anda akan melihat satu fail yang dipanggil "halo".

Setakat ini sangat baik tetapi sekarang cuba jalankan langkah 7 lagi.

  1. Kesilapan akan muncul menyatakan bahawa folder sudah ada.

Terdapat pelbagai perkara yang boleh kita lakukan untuk memperbaiki skrip. Contohnya, jika folder sudah ada, kami tidak begitu peduli selagi ia wujud.

#! / bin / bash

mkdir -p $ @

cd $ @

sentuh hello

Jika anda menyatakan -p sebagai sebahagian daripada arahan mkdir maka ia tidak akan menjadi kesilapan jika folder itu sudah wujud tetapi jika ia tidak wujud ia akan menciptanya.

Seperti yang berlaku, arahan sentuhan akan membuat fail jika ia tidak wujud tetapi jika ia wujud ia hanya meminda tarikh dan masa yang terakhir diakses.

Bayangkan pernyataan sentuhan digantikan dengan pernyataan echo yang menulis teks ke fail seperti berikut:

#! / bin / bash

mkdir -p $ @

cd $ @

echo "hello" >> hello

Jika anda menjalankan perintah "./createhellodirectory.sh test" sekali lagi kesannya ialah fail yang dipanggil "hello" dalam direktori ujian akan bertambah besar dan lebih besar dengan lebih banyak baris dengan perkataan "hello" di dalamnya.

Kini, ini mungkin atau mungkin tidak seperti yang dimaksud tetapi katakan pada masa ini bahawa ini bukan tindakan yang dikehendaki. Anda boleh menulis ujian untuk memastikan direktori tidak wujud sebelum anda menjalankan arahan echo seperti berikut.

#! / bin / bash

mkdir $ @ 2> / dev / null;

jika [$? -eq 0]; kemudian

cd $ @

echo "hello" >> hello

keluar

fi

Skrip di atas adalah kaedah pilihan saya untuk mengendalikan penciptaan folder. Perintah mkdir mencipta folder yang diluluskan sebagai parameter input tetapi sebarang output ralat dihantar ke / dev / null (yang pada asasnya bermakna tempat).

Baris ketiga memeriksa status keluaran perintah terdahulu yang merupakan pernyataan "mkdir" dan jika ia berjaya, ia akan melaksanakan penyataan sehingga kenyataan "fi" tercapai.

Ini bermakna anda boleh membuat folder dan melakukan semua perkara yang anda inginkan jika arahan itu berjaya. Jika anda ingin melakukan sesuatu yang lain jika arahan itu tidak berjaya maka anda hanya boleh memasukkan pernyataan yang lain seperti berikut:

#! / bin / bash

mkdir $ @ 2> / dev / null;

jika [$? -eq 0]; kemudian
cd $ @
echo "hello" >> hello
keluar
lain
cd $ @
echo "hello"> hello
keluar
fi

Dalam skrip di atas jika pernyataan mkdir berfungsi maka pernyataan echo menghantar perkataan "hello" ke akhir fail yang dipanggil "halo" sedangkan jika tidak ada file baru akan dibuat dipanggil "halo" dengan kata " halo "di dalamnya.

Contoh ini tidak praktikal kerana anda boleh mencapai hasil yang sama hanya dengan selalu menjalankan echo "hello"> hello line . Titik contohnya adalah untuk menunjukkan bahawa anda boleh menjalankan perintah "mkdir", menyembunyikan output ralat, periksa status perintah untuk melihat apakah ia berjaya atau tidak dan kemudian melakukan satu set perintah jika perintah "mkdir" berjaya dan satu set arahan lain jika tidak.