|
Kedua daripada ini tutorial mini pengaturcaraan di Bash, di mana kita belajar menggunakan kitaran dan alat lain yang akan membantu kami meningkatkan fungsi alat kami skrip. |
Sekiranya bersyarat
Fungsi If adalah untuk menerapkan filter dan melakukan operasi atau tugas untuk setiap jenis filter yang digunakan. Strukturnya adalah seperti berikut:
Sekiranya [keadaan]; kemudian perintah elif [keadaan]; maka perintah lain; perintah fi
Contoh ditunjukkan di sebelah gelung For di bahagiannya.
Kitaran
1. Sementara: ia akan melaksanakan semua perintah yang ditentukan antara melakukan dan dilakukan selagi syaratnya benar. Sekiranya kita ingin memberikan operator perbandingan kepadanya, ungkapan mesti dalam tanda kurung.
semasa KEADAAN / PERINTAH melakukan perintah yang dilakukan
Contoh: jadual pendaraban nombor
#! / bin / bash X = 1 echo "Masukkan nombor dan tekan ENTER" baca M #Lingkaran mengawal bahawa X kurang daripada atau sama dengan 10 sementara [$ X –le 10] melakukan #In R kita menyimpan pendaraban X by MR = $ [X * M] # Pendaraban ini dicetak pada gema skrin "$ M * $ X = $ R" #Dengan membiarkan, kami meningkatkan nilai X sebanyak 1 unit membiarkan X = $ X + 1 selesai
2. Untuk: menyimpan senarai elemen dalam pemboleh ubah, yang akan digunakan untuk melakukan operasi tertentu dengan setiap kitaran.
untuk VARIABLE dalam ELEMENTS melakukan perintah yang dilakukan
Contoh: program yang menyalin fail dari satu folder ke folder lain, menggantikan fail lama.
# / bin / bash #Kami mewujudkan direktori sumber dan destinasi ASAL = / rumah / pengguna / Muat turun TUJUAN = / rumah / pengguna / Dokumen # Kami menempatkan diri dalam sumber cd $ ASAL #Dari semua fail, kami hanya mahukan yang adalah # panggil FILE untuk FILE di * do ARCH-DESTINATION = "$ DESTINATION / $ FILE" # -f menyaring kami fail biasa, kerana direktori # tidak ada yang baik bagi kami. –Nt menyaring # fail “lebih baru” daripada # yang terdapat di folder tujuan sekiranya [-f $ FILE] && [$ FILE –nt $ ARCH-DESTINATION]; kemudian gema "Menyalin $ FILE ..." # kami menyalin fail dengan cp cp $ FILE $ ARCH-DESTINATION fi selesai #Kami cd untuk keluar dari folder sumber cd
Contoh lain: skrip di mana pengguna mesti meneka nombor rawak yang dihasilkan oleh komputer.
# / bin / bash # Nombor rawak dihasilkan dari 1 hingga 10, ia # disimpan dalam RANDOM RANDOM = $ [$ RANDOM% 10 + 1] sementara [1] bergema –n "Masukkan nombor:" baca NUM # Bandingkan jika nombor yang dipilih oleh pengguna adalah # sama dengan RANDOM; ingat untuk menggunakan $ untuk menilai # nilai pemboleh ubah dan bukan namanya jika [“$ NUM –eq“ $ RANDOM ”]; kemudian bergema "Anda betul!" #break membolehkan mengakhiri gelung semasa rehat #Jika bilangannya kurang dari RANDOM elif [“$ NUM –gt“ $ RANDOM ”]; kemudian gema "Ia kurang" "Jika tidak, lebih besar daripada RANDOM yang lain bergema" ITU lebih besar "
3. Sehingga: strukturnya hampir sama dengan Sementara, kecuali bahawa kodnya selalu dijalankan sementara penilaian keadaannya negatif, iaitu, program ini terus dijalankan "sehingga kondisi itu terjadi"
sehingga KEADAAN / PERINTAH melakukan perintah yang dilakukan
Contoh: mencetak nombor 10-20 mengikut turutan menurun
#! / bin / bash CONT = 20 # Selagi kaunter kurang dari 10 (-lt, "lower #than") kod tersebut dilaksanakan sehingga [$ CONT -lt 10]; do echo "COUNTER $ CONT" #A CONT ditolak oleh unit biarkan CONT- = 1 selesai
4. Pilih: kitaran terakhir ini adalah kes khas, kerana biasanya digunakan untuk membuat menu dengan cepat. Ia berfungsi serupa dengan gelung For.
pilih VARIABLE dalam SENARAI perintah yang dilakukan
Contoh: memberi pengguna kemampuan untuk meneruskan atau mengakhiri skrip.
#! / bin / bash #item adalah pemboleh ubah yang bertindak balas terhadap apa yang #pengguna pilih, Lanjutkan dan Selesai adalah #pilihan yang ada padanya, walaupun pilihan lain dapat ditambahkan # lebih banyak item pilih di Lanjutkan Selesai lakukan #Jika pengguna memilih akhiri program, kemudian dengan rehat kita keluar dari kitaran. jika [$ item = "Selesai"]; maka break fi selesai