


Cara menggunakan penyataan bersyarat dalam bash jika kes
Oct 09, 2025 am 01:17 AMDalam skrip bash, jika sesuai untuk penghakiman logik yang mudah, dan kes sesuai untuk padanan multi-nilai. 1. Jika sering digunakan untuk penghakiman keadaan dinamik seperti kewujudan fail dan perbandingan berangka, dan menyokong ELIF dan pengembangan cawangan lain; 2. Kes lebih sesuai untuk memadankan nilai atau corak tetap yang sepadan, seperti pemprosesan klasifikasi arahan input pengguna, menyokong aksara wildcard dan setiap cawangan perlu berakhir dengan ;; 3. Asas Pemilihan: Gunakan jika untuk keadaan dinamik, dan gunakan kes untuk nilai tetap untuk dipadankan.
Dalam skrip bash, if
dan case
adalah dua cara biasa untuk menangani penghakiman bersyarat. Mereka masing -masing sesuai untuk senario yang berbeza: if
lebih sesuai untuk penghakiman logik yang mudah, manakala case
lebih sesuai untuk memadankan pelbagai nilai tetap. Berikut adalah beberapa kegunaan praktikal dan langkah berjaga -jaga.
Gunakan jika pernyataan untuk membuat penilaian bersyarat
Kenyataan if
dalam bash biasanya digunakan dengan ekspresi ujian, dan struktur asas adalah seperti berikut:
jika [keadaan]; kemudian # Jalankan perintah fi
Anda juga boleh menambah else
atau elif
untuk melanjutkan logik:
jika [keadaan1]; kemudian # Apabila keadaan 1 ditubuhkan, laksanakan ELIF [Condition2]; kemudian # Apabila keadaan 2 ditubuhkan, yang lain dilaksanakan # Melaksanakan fi apabila tidak ada yang benar
Contoh penggunaan biasa:
Semak sama ada fail wujud:
jika [-f "filename.txt"]; kemudian echo "Fail wujud" lain echo "Fail tidak wujud" fi
Bandingkan saiz berangka:
jika ["$ num" -gt 10]; kemudian echo "Nilai lebih besar daripada 10" fi
Nota: Anda harus menggunakan =
untuk perbandingan rentetan, dan gunakan pengendali seperti -eq
, -ne
, -lt
, -gt
dan lain -lain untuk perbandingan berangka.
Gunakan pernyataan kes untuk padanan pelbagai nilai
Apabila anda perlu memadankan beberapa kes berdasarkan nilai pembolehubah, pernyataan case
akan lebih jelas dan lebih ringkas. Sintaks adalah seperti berikut:
kes $ pembolehubah dalam corak1) # Melaksanakan apabila corak sepadan1 ;; corak2) # Melaksanakan apabila corak yang sepadan2 ;; *) # lalai ;; ESAC
Senario aplikasi praktikal:
Sebagai contoh, pilih operasi berdasarkan input pengguna:
Kes $ pilihan dalam Mulakan) echo "Start Service" ;; Berhenti) echo "Stop Service" ;; mulakan semula) echo "mulakan semula perkhidmatan" ;; *) echo "pilihan tidak sah" ;; ESAC
Ciri -ciri:
- Watak Wildcard seperti
*.txt)
boleh memadankan semua nama fail yang berakhir dengan.txt
. - Setiap cawangan mesti ditambah pada akhirnya
;;
jika tidak, cawangan seterusnya akan terus dilaksanakan (serupa dengan suis C).
Bagaimana untuk memilih jika dan kes?
Kedua -dua kenyataan ini tidak digantikan bersama, tetapi mempunyai senario mereka sendiri:
-
Sekiranya:
- Keadaan dinamik, seperti perbandingan berangka, status fail, dll.
- Tidak ada banyak cawangan logik, struktur mudah
-
Kes itu digunakan:
- Untuk memadankan pelbagai nilai atau corak tetap
- Sumber input adalah input pengguna atau item konfigurasi, dengan nilai terhad dan jelas
Contohnya:
- Sekiranya anda menilai sama ada pengguna memasuki
yes
atauno
, anda boleh menggunakanif
- Sekiranya anda ingin melakukan operasi yang berbeza berdasarkan arahan yang dimasukkan oleh pengguna (seperti
start
,stop
,status
), lebih jelas untuk menggunakancase
Pada dasarnya itu sahaja. Menguasai penggunaan if
dan case
boleh membuat skrip bash anda lebih fleksibel dan lebih mudah untuk dikekalkan.
Atas ialah kandungan terperinci Cara menggunakan penyataan bersyarat dalam bash jika kes. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Stock Market GPT
Penyelidikan pelaburan dikuasakan AI untuk keputusan yang lebih bijak

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

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

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.

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.

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.

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.

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,

Menulis skrip bash yang mudah sebenarnya tidak begitu sukar. Anda boleh memulakan dengan cepat dengan menguasai beberapa struktur asas dan arahan. 1. Setiap skrip harus bermula dengan #!/Bin/bash, dan kemudian lari selepas menambah kebenaran pelaksanaan melalui Chmod X; 2. Pembolehubah diberikan secara langsung tanpa pengisytiharan, dan mereka dirujuk oleh nama pembolehubah $ atau $ {Variable Name}, dan gunakan perintah baca untuk mencapai interaksi input; 3. 4. Teknik praktikal termasuk parameter debugging - x, menggunakan laluan mutlak, menambah komen untuk meningkatkan kebolehbacaan, dan menunjukkan kejayaan yang berjaya dengan Exit0. Selepas menguasai mata teras ini, amalkan lebih banyak untuk menulis skrip bash dengan mahir.

Apabila menghadapi kesesakan cakera IO, anda harus terlebih dahulu mengesahkan punca utama masalah dan kemudian mengoptimumkannya. 1. Gunakan IOSTAT, IOTOP dan alat lain untuk mengesahkan sama ada terdapat kesesakan IO, memberi perhatian kepada %util dan menanti petunjuk; 2. Menganalisis tingkah laku aplikasi, mengurangkan bacaan dan penulisan fail kecil, membolehkan cache sistem fail, dan mengoptimumkan kaedah penulisan log; 3. Pilih sistem fail yang sesuai seperti Ext4 atau XFS untuk meningkatkan kecekapan IO; 4. Laraskan strategi penjadualan IO, pilih NOOP atau tarikh akhir dalam SSD, dan gunakan CFQ dalam cakera keras mekanikal; 5. Gunakan cache (seperti redis) dan mekanisme IO asynchronous untuk mengurangkan tekanan cakera.
