Linux / Perintah / mkdir / Perintah untuk membuat direktori
Di Linux, mkdir adalah perintah untuk membuat direktori baru. Untuk membuat jalur bertingkat sekaligus, gunakan -p, yang memungkinkan Anda mempertahankan direktori yang sudah ada sambil membuat direktori induk yang hilang.
Membuat dan memeriksa direktori
mkdir berasal dari istilah Inggris make directory (membuat direktori). Perintah berikut membuat direktori dengan nama projects di direktori saat ini jika belum ada dan memeriksa hasilnya. Jalankan di direktori latihan kosong untuk menghindari kebingungan dengan data yang sudah ada.
pwd
mkdir projects
ls -ld projects
Pertama, periksa lokasi kerja saat ini dengan pwd, dan kemudian periksa apakah informasi direktori baru ditampilkan di ls -ld. mkdir biasanya tidak menampilkan pesan apa pun jika berhasil. Jika file atau direktori dengan nama yang sama sudah ada, perintah default akan menampilkan kesalahan.
Path relatif didasarkan pada lokasi saat ini, dan path absolut yang dimulai seperti /, seperti /home/user/projects, ditentukan dari direktori root. Periksa path sebenarnya dan izin akses sesuai dengan lingkungan Anda.
Buat beserta direktori induknya
Perintah berikut membuat direktori induk yang diperlukan jika mereka tidak ada. Misalnya, jika work tidak ada di lokasi latihan, perintah ini akan membuat work, work/reports, dan work/reports/2024 secara berurutan.
mkdir -p work/reports/2024
ls -ld work work/reports work/reports/2024
Jika Anda menjalankan mkdir work/reports/2024 tanpa -p, itu akan gagal ketika jalur induk tidak ada. Menambahkan -p tidak akan menyebabkan kesalahan hanya karena jalur sudah ada sebagai direktori. Ini tidak menghapus konten yang ada atau mengubah izin direktori yang ada.
Namun, jika ada file biasa dengan nama yang sama di tengah jalur atau jika Anda tidak memiliki izin yang diperlukan untuk direktori induk, itu mungkin gagal meskipun Anda menggunakan -p. Periksa pesan kesalahan, status keluar, dan jalur aktual secara bersama-sama untuk memastikan keberhasilan.
Beberapa direktori dan nama dengan spasi
Anda dapat mencantumkan nama yang dipisahkan oleh spasi untuk membuat beberapa direktori. Berikut adalah contoh ketika dua nama tersebut belum ada di lokasi saat ini.
mkdir documents images
ls -ld documents images
Jika nama itu sendiri mengandung spasi, letakkan seluruh jalur dalam tanda kutip untuk mengirimnya sebagai satu nama. Jika tidak ada tanda kutip, shell akan membaginya pada spasi dan mengirimnya sebagai argumen terpisah.
mkdir "project files"
ls -ld "project files"
Nama yang dimulai dengan tanda hubung dapat ditafsirkan sebagai opsi. Misalnya, mkdir -- -archive menempatkan nama setelah --, jadi tidak dianggap sebagai opsi.
Periksa izin dan hasil saat membuat
Secara umum, izin default dari direktori baru dipengaruhi oleh umask shell saat ini dan pengaturan sistem file. Periksa mask saat ini dengan umask, dan verifikasi izin sebenarnya dari direktori yang dibuat dengan ls -ld.
Anda juga dapat mengatur izin dari direktori yang baru dibuat menggunakan opsi -m dari GNU mkdir. Berikut ini adalah contoh di mana izin baca, tulis, dan eksekusi diberikan kepada pemilik dan tidak ada izin yang diberikan kepada grup dan lainnya ketika private belum ada.
mkdir -m 700 private
ls -ld private
Bahkan jika -p dan -m digunakan bersamaan, -m diterapkan pada direktori baru yang ditentukan di baris perintah dan tidak diterapkan pada direktori induk yang dibuat secara otomatis. Ini juga tidak menerapkan izin baru pada direktori yang sudah ada. Daftar kontrol akses atau kebijakan sistem file dapat memengaruhi akses aktual, jadi periksa hasilnya di lingkungan yang diperlukan. Untuk perilaku rinci dari opsi-opsi tersebut, lihat manual GNU mkdir.
Saat pembuatan gagal
- Sudah ada: Gunakan
ls -ld nameuntuk memeriksa apakah item yang ada adalah file atau direktori.-phanya sesuai jika Anda ingin menggunakan direktori yang ada sebagaimana adanya. - Jalur induk tidak ditemukan: Periksa ejaan jalur dan lokasi Anda saat ini, kemudian putuskan apakah Anda dapat membuat direktori induk yang hilang menggunakan
-p. - Akses ditolak: Periksa apakah Anda memiliki izin tulis dan akses yang diperlukan untuk direktori induk dan mintalah izin tersebut dari administrator jika diperlukan.
Anda dapat menghapus direktori kosong yang dibuat selama latihan dengan rmdir setelah memastikan bahwa direktori tersebut tidak berisi konten. rmdir umumnya tidak menghapus direktori yang tidak kosong.




