Jadual Kandungan
Gunakan ujian -d dalam bersyarat
Gabungkan dengan pembolehubah untuk laluan dinamik
Mengendalikan kes apabila direktori mungkin symlink
Rumah Operasi dan penyelenggaraan operasi dan penyelenggaraan linux Cara memeriksa sama ada direktori wujud di bash

Cara memeriksa sama ada direktori wujud di bash

Aug 27, 2025 am 01:21 AM

Cara yang paling mudah dan paling boleh dipercayai untuk memeriksa sama ada direktori dalam bash adalah dengan menggunakan ujian bersyarat dengan pilihan -D. Kaedah khusus adalah untuk menilai dengan jika [-d ​​"/path/to/dir"], dan jika jalan wujud dan direktori, ia kembali benar; Kaedah ini akan mengikuti pautan simbolik, dan jika laluan itu adalah pautan simbolik yang dikaitkan dengan direktori, ia juga akan kembali benar; Digabungkan dengan pembolehubah, pemeriksaan laluan dinamik boleh dilaksanakan, dan pembolehubah (seperti "$ my_dir") harus dibungkus dalam petikan untuk mengendalikan jalan dengan selamat dengan ruang atau aksara khas; Xargs juga boleh digunakan untuk menghilangkan ruang putih yang tidak perlu di jalan; Jika pengaruh pautan simbolik perlu dikecualikan, anda boleh menggunakan -l terlebih dahulu untuk mengesan sama ada laluan itu adalah pautan simbolik, dan kemudian gunakan -D untuk mengesahkan sama ada ia adalah direktori sebenar.

Cara memeriksa sama ada direktori wujud di bash

Di Bash, memeriksa sama ada direktori wujud adalah tugas yang sama, terutamanya dalam skrip di mana anda perlu membuat keputusan berdasarkan sistem fail. Cara yang paling mudah dan paling dipercayai adalah menggunakan ujian bersyarat dengan -d .


Gunakan ujian -d dalam bersyarat

Bash menyediakan ujian fail terbina dalam, dan -d cek jika laluan tertentu wujud dan direktori.

 jika [-d ​​"/path/to/dir"]; kemudian
    echo "Direktori wujud"
lain
    echo "direktori tidak wujud"
fi

Ini berfungsi dengan baik untuk pemeriksaan asas. Hanya pastikan laluan itu dipetik dengan betul, terutamanya jika ia mengandungi ruang atau watak khas.

Beberapa perkara yang perlu diperhatikan:

  • Ini mengembalikan benar hanya jika laluan wujud dan direktori.
  • Ia mengikuti pautan simbolik - jika laluannya adalah symlink yang menunjuk ke direktori, ia masih kembali benar.

Gabungkan dengan pembolehubah untuk laluan dinamik

Semasa bekerja dengan laluan dinamik (seperti input pengguna atau argumen skrip), simpannya dalam pembolehubah terlebih dahulu:

 My_dir = "/Some/Path"

jika [-d ​​"$ my_dir"]; kemudian
    Echo "Menemukannya!"
lain
    echo "tidak di sana."
fi

Menggunakan petikan di sekitar pembolehubah ( "$MY_DIR" ) memastikan skrip anda mengendalikan laluan dengan ruang atau watak khas dengan selamat.

Juga pertimbangkan untuk memangkas ruang kosong yang tidak disengajakan sebelum ujian:

 My_dir = $ (echo "$ my_dir" | xargs)

Jika anda ingin memastikan jalan itu sendiri adalah direktori dan bukan hanya symlink untuk satu, gunakan -L untuk memeriksa sama ada ia adalah symlink pertama:

 jika [-l "$ my_dir"]; kemudian
    echo "Ini symlink, bukan direktori sebenar"
elif [-d "$ my_dir"]; kemudian
    echo "Ini direktori sebenar"
lain
    echo "tidak wujud sebagai direktori"
fi

Ini membantu mengelakkan tingkah laku yang tidak dijangka dalam kes -kes di mana symlinks mungkin menyebabkan kekeliruan.


Pada dasarnya itu sahaja. Memeriksa direktori di Bash tidak perlu rumit -hanya gunakan -d , mengendalikan pembolehubah dengan teliti, dan sedar akan pautan simbolik jika mereka penting dalam konteks anda.

Atas ialah kandungan terperinci Cara memeriksa sama ada direktori wujud di bash. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Stock Market GPT

Stock Market GPT

Penyelidikan pelaburan dikuasakan AI untuk keputusan yang lebih bijak

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara memperbaiki kebergantungan yang rosak Cara memperbaiki kebergantungan yang rosak Sep 16, 2025 am 05:28 AM

Apabila menghadapi masalah Brokenendopes, anda boleh mengikuti langkah-langkah berikut untuk menyelesaikannya: 1. Gunakan sudoapt-fix-brokeninstall atau cuba memasang selepas pembersihan; 2. Periksa dan kesilapan konfigurasi sumber perisian yang betul; 3. Pasang secara manual, nyahpasang atau memasang semula pakej konflik; 4. Bersihkan cache atau pasang semula komponen yang berkaitan. Dalam kebanyakan kes, kaedah ini boleh digunakan untuk menyelesaikan masalah pergantungan tanpa bimbang yang berlebihan.

Cara mengeluarkan pakej menggunakan yum Cara mengeluarkan pakej menggunakan yum Sep 21, 2025 am 06:15 AM

Toremoveapackageusingyum,usethecommandsudoyumremovepackage_name,whichremovesthepackageandpotentiallyitsunuseddependencies.Beforedoingso,ensureyouhavethecorrectpackagenamewithyumlistorrpm-q,checkdependenciesviayumdeplist,andavoidremovingcriticalsystem

Cara memeriksa log sistem Cara memeriksa log sistem Sep 19, 2025 am 02:56 AM

Untuk melihat log sistem, anda perlu memilih alat yang sepadan mengikut sistem operasi. Windows menggunakan penonton acara, dengan jalan untuk memenangi r, masukkan eventvwr.msc, untuk melihat klasifikasi "sistem" di bawah "log Windows", dan menyokong penapisan dan penjimatan; Log sistem Linux biasanya terletak di/var/log/direktori, seperti syslog, mesej, fail DMESG, dan boleh dilihat oleh perintah nama ekor-f atau jurnalcl-u; MAC boleh melihat log melalui aplikasi konsol atau arahan logshow. Apabila melihat, anda harus memberi perhatian kepada maklumat tahap kesilapan dan amaran, menganalisis masalah berdasarkan cap waktu dan konteks, dan memberi perhatian kepada keperluan kebenaran.

Cara mencari proses mana yang menggunakan fail Cara mencari proses mana yang menggunakan fail Sep 20, 2025 am 04:22 AM

Apabila fail diduduki, anda boleh mencari dan menamatkan proses yang diduduki dengan kaedah berikut: 1. Sistem Windows boleh menggunakan Pengurus Tugas untuk mencari pemegang fail dengan monitor sumber; 2. Gunakan alat handle.exe sysinternals untuk menanyakan dengan tepat, memerlukan kebenaran pentadbir; 3. Linux/MacOS menggunakan arahan LSOF untuk mencari kata kunci, dan grep boleh mencari kata kunci; 4. Sebelum menamatkan proses, anda mesti mengesahkan tujuannya. Windows boleh menggunakan Pengurus Tugas atau Perintah Taskkill, dan Linux/MacOS boleh menggunakan arahan Kill untuk mengelakkan membunuh proses sistem secara tidak sengaja.

Cara menggunakan arahan netstat Cara menggunakan arahan netstat Sep 14, 2025 am 12:36 AM

Netstat adalah alat praktikal untuk menyelesaikan masalah rangkaian dan memeriksa status sambungan. Kegunaan umum termasuk: 1. Gunakan NetStat -A untuk melihat semua sambungan aktif, penapis TCP untuk -t, dan UDP untuk -U; 2. Nama program paparan dan nama perkhidmatan ditambah -n parameter untuk meningkatkan kelajuan; 3. Gunakan Netstat -L untuk melihat port mendengar, digabungkan dengan -Tulnp untuk memaparkan maklumat proses; 4. Cari program yang menduduki pelabuhan tertentu boleh dilaksanakan melalui GREP: Nombor Port dan Perintah PS; 5. Jika sistem tidak dipasang, cuba perintah SS atau pasangkan pakej alat bersih, dan keizinan akar diperlukan untuk melaksanakan parameter -p untuk mendapatkan maklumat lengkap.

Cara menggunakan ruang nama rangkaian Cara menggunakan ruang nama rangkaian Sep 17, 2025 am 05:16 AM

Untuk membuat dan menggunakan ruang nama rangkaian, anda perlu membuatnya terlebih dahulu, kemudian berikan antara muka dan IP, dan sediakan penghalaan untuk mencapai komunikasi. Langkah -langkah adalah seperti berikut: 1. Buat ruang nama dengan ipnetnsadd; 2. Buat Vethpair melalui Ilinkadd dan gerakkan satu hujung ke ruang nama; 3. Berikan IP ke antara muka dan membolehkannya; 4. Jika anda memerlukan akses rangkaian luaran, aktifkan pemajuan IP, konfigurasikan iptablesmasquerade dan tetapkan laluan lalai; 5. Tutup antara muka terlebih dahulu dan bersihkan peraturan apabila memadam. Seluruh proses perlu memberi perhatian kepada pembersihan sumber dan konsistensi peraturan.

Cara Memisahkan Cakera Menggunakan Terpisah Cara Memisahkan Cakera Menggunakan Terpisah Sep 19, 2025 am 04:31 AM

Kunci untuk menggunakan cakera partition berpisah adalah menguasai beberapa langkah: 1. Penyediaan: Sahkan nama peranti cakera sasaran (seperti /dev /sdb) dan menilai jenis jadual partisi. Jika ia kurang daripada 2TB, gunakan MSDOS (MBR) dan jika ia lebih besar daripada 2TB, gunakan GPT; 2. Buat Jadual Partition: Selepas memasuki mod operasi berpisah, laksanakan perintah MKLabel untuk memilih GPT atau MSDOS, langkah ini akan membersihkan data cakera; 3. Mula partition: Gunakan perintah mkpart untuk menentukan jenis partition, sistem fail dan lokasi permulaan dan akhir, seperti mkpartprimaryext40gb50gb, dan terus menambah partisi lain; 4. Format dan pasangkan partition: Laksanakan secara manual mkfs.ext4 dan arahan lain untuk memformat,

Cara Menyegerakkan Masa Sistem Menggunakan NTP Cara Menyegerakkan Masa Sistem Menggunakan NTP Sep 21, 2025 am 05:54 AM

Untuk memastikan bahawa penyegerakan masa sistem boleh dipercayai, mula-mula pastikan perkhidmatan NTP dipasang dan dijalankan, gunakan SystemCTL untuk menyemak keadaan NTP atau Chonyd, dan mulakan dan menetapkan permulaan kuasa sendiri jika perlu. Kedua, konfigurasikan pelayan NTP yang sesuai, ubah fail /etc/ntp.conf atau /etc/chrony/chrony.conf, dan cadangkan memilih pelayan dengan lokasi geografi yang sama seperti awan Alibaba atau awan Tencent. Akhirnya, periksa status penyegerakan dan gunakan sumber NTPQ-P atau ChonyCSSS untuk melihat status sambungan. Sekiranya mengimbangi terlalu besar, anda boleh menggunakan ntpdate untuk menentukur secara manual, tetapi penyegerakan jangka panjang harus bergantung pada perkhidmatan latar belakang untuk memastikan kestabilan.

See all articles