Panduan Pemula

Tutorial Bash Scripting untuk Pemula

Tutorial Bash Scripting untuk Pemula

Jika Anda memulai dengan sistem Linux, istilah seperti "Skrip shell" atau “Skrip bash” bisa sangat umum - Tapi apa artinya? Sebelum kita masuk ke detail, mempelajari skrip Bash dapat membantu Anda menghemat waktu dalam menjalankan dan melakukan berbagai tugas sistem dan memahami baris perintah (Terminal) Linux dengan lebih baik dan mengotomatiskan banyak tugas sistem.

Apa itu Bashu?

Bash, singkatan dari “Bourne-Lagi-Shell,” adalah shell Unix atau penerjemah bahasa perintah untuk sistem operasi GNU. Ini telah menjadi Shell utama untuk distribusi Linux dan rilis Apple macOS sebelum macOS Catalina. Bash juga tersedia untuk Windows 10 melalui subsistem Windows untuk Linux.

Bash biasanya berjalan di jendela teks yang biasa dikenal sebagai Terminal, di mana pengguna mengetikkan perintah untuk melakukan berbagai tugas. Bash juga dapat menjalankan perintah yang ditulis dalam file, metode yang disebut sebagai “skrip bash.”

Perbedaan antara Bash scripting dan Shell Scripting

Skrip Shell dan skrip Bash bukanlah hal yang sama. Dengan skrip Bash, Anda secara eksplisit menggunakan bash shell. Di sisi lain, skrip Shell bisa menjadi kata yang cukup luas karena kami memiliki shell lain yang tersedia selain Bash. Beberapa yang paling umum termasuk Korn (ksh), C shell (csh), Z shell (zsh), dan Bash shell (sh). Namun, tidak mengherankan jika menemukan orang yang menggunakan skrip bash dan skrip shell secara bergantian memiliki arti yang sama. Posting kami di Top 6 Open Source Shells untuk Linux memberikan penjelasan rinci tentang shell ini.

Dalam posting ini, kita akan melihat skrip Bash. Secara default, banyak distribusi Linux yang tersedia menggunakan shell Bash. Lihat posting kami tentang 6 Distribusi Linux terbaik untuk pemula. Untuk mengonfirmasi shell yang Anda gunakan pada distribusi Linux Anda saat ini, jalankan perintah di Terminal.

gema $SHELL

kulit

Dari gambar di atas, Anda dapat melihat penerjemah default di sistem saya adalah bash. Saat ini, saya menjalankan Ubuntu 20.04 LTS. Mari selami!

Memahami Skrip Bash

Skrip bash adalah file teks yang berisi perintah bash yang dieksekusi untuk melakukan berbagai tugas. Untuk menulis skrip ini, Anda hanya memerlukan editor teks sederhana seperti gedit, leaf pad, vim, nano, dan banyak lagi. Harap ingat untuk menyimpan skrip Anda dengan .SH ekstensi dan sebagai teks biasa dan bukan teks kaya. Salah satu editor favorit saya yang saya gunakan untuk menulis skrip adalah editor nano.

Memberi nama, Menetapkan izin, dan Menjalankan skrip Bash

Seperti yang dijelaskan di atas, pastikan untuk menggunakan .ekstensi sh untuk skrip bash Anda. Misalnya, Anda dapat memiliki skrip dengan nama fosslinux_backup.SH. Namun, akan lebih baik jika Anda berhati-hati dalam menamai skrip Anda. Misalnya, kebanyakan orang suka menyimpan sebagian besar skrip mereka sebagai "tes".Tidak diketahui sebagian besar, ada perintah built-in Unix yang disebut test, yang memeriksa jenis file dan membandingkan nilai. Anda dapat menggunakan perintah which untuk memeriksa apakah ada program dengan nama yang sama dengan skrip Anda untuk mencegah konflik program.

yang [perintah] e.g tes yang mana

Perintah yang mana

Dari output di atas, kita dapat melihat bahwa tes sudah merupakan perintah bawaan. Oleh karena itu, untuk menghindari konflik antar program, saya tidak akan menyebut skrip saya sebagai my "uji.”

Untuk membuat skrip dapat dieksekusi untuk setiap pengguna, gunakan perintah di bawah ini:

chmod +x [skrip.SH]

Untuk membuat skrip dapat dieksekusi untuk pengguna saat ini, gunakan perintah di bawah ini:

chmod u+x [skrip.SH]

Sekarang untuk menjalankan skrip, jalankan perintah di bawah ini:

./[nama_skrip]

Dengan metode di atas, Anda akan menyadari bahwa Anda perlu menggunakan CD perintah untuk pindah ke direktori yang berisi skrip atau meneruskan jalur ke skrip. Namun, ada solusi untuk ini. Simpan skrip Anda di tempat sampah direktori yang ada di direktori home.

Dengan pembaruan terkini, sebagian besar distribusi tidak disertai dengan tempat sampah folder secara default. Oleh karena itu, Anda akan diminta untuk membuatnya secara manual. Dengan menempatkan skrip Anda di folder ini, Anda dapat menjalankan skrip dengan mengetikkan namanya di Terminal tanpa menggunakan CD dan ./ perintah.

Pedoman Bash Scripting

Sebelum menulis skrip pertama Anda, ada beberapa panduan yang perlu Anda pahami saat menulis skrip.

Itu #!/bin/bash Pernyataan (Hash-Bang Hack) adalah jalur ke shell yang akan kita gunakan. Jika Anda menggunakan shell lain, maka Anda perlu mengedit jalur ini. Kami memahami bahwa semua komentar dimulai dengan # simbol. Namun, ketika diikuti dengan (!) tandai di Hash-Bang Hack, skrip dipaksa untuk dieksekusi dengan shell yang ditunjuk oleh baris ini. Dalam kasus kami, ini adalah shell Bash.

Skrip Bash Pertama Anda

Seperti kebanyakan bahasa pemrograman, kami akan menulis skrip yang mencetak "Halo Dunia" pernyataan saat dieksekusi. Buka editor teks favorit Anda dan rekatkan perintah di bawah ini. Simpan file teks sebagai fossHelloWorld.SH atau nama lain yang bukan merupakan perintah bawaan.

#!/bin/bash #Script ini akan mencetak 'Hello World' di Terminal echo "Hello World"

Setelah Anda menyimpan file, buat itu dapat dieksekusi dengan menjalankan perintah di bawah ini:

chmod +x fossHelloWorld.SH

Sekarang, jalankan dengan perintah di bawah ini:

./fossHelloWorld.SH

Skrip pertama

Script di atas hanya memiliki tiga baris. Yang pertama adalah Hash-Bang Hack yang sudah kita bahas di atas, yang kedua adalah komentar, dan yang ketiga adalah perintah yang akan dijalankan. Catatan, komentar tidak pernah dieksekusi.

Mari kita lihat fitur skrip bash lain yang dapat Anda manfaatkan.

Perintah gema

Perintah Echo digunakan untuk mencetak output pada baris perintah Linux atau Terminal. Jika Anda seorang pengembang dan pernah bekerja dengan PHP sebelumnya, Anda pasti pernah menemukan perintah ini juga. Mari kita menulis skrip bash kecil untuk mendemonstrasikan cara kerja perintah ini.

#!/bin/bash #Ayo cetak baris pertama echo "Ini Fosslinux.com - Dengan baris baru" #Ayo cetak pernyataan Kedua tanpa baris baru echo -n "Ini Fosslinux - Tidak Ada Baris baru"

Simpan skrip Anda, tetapkan izin yang diperlukan, dan jalankan.

Bash Echo

Untuk memahami kode, perintah gema pertama mencetak pernyataan dan pergi ke baris berikutnya. Perintah gema kedua memiliki -tidak argumen yang mencegah skrip pergi ke baris berikutnya. Anda dapat menggunakan banyak opsi lain dengan perintah Echo, termasuk variabel, seperti yang akan kita lihat di bawah.

Variabel

Variabel adalah bagian umum dan penting dari bahasa pemrograman apa pun. Seseorang dapat mendeklarasikan variabel Bash dalam beberapa cara. Saat menetapkan nilai ke variabel apa pun, Anda tidak perlu menggunakan simbol apa pun. Namun, saat memanggil nilai variabel, Anda harus menggunakan $ tanda di awal variabel.

Anda dapat menggunakan variabel di Terminal atau sebagai skrip. Jalankan perintah di bawah ini di Terminal Anda.

myWebsite = "Fosslinux.com" echo $situssaya

Menggunakan Variabel di terminal

Sekarang mari kita buat skrip bash yang mengambil dua input dari pengguna dan menyimpannya dalam variabel $x dan $y. Script kemudian akan memeriksa apakah kedua nilai itu sama atau tidak.

#!/bin/bash echo "Masukkan angka pertama" read a echo "Masukkan angka kedua" read b if [[ $a -eq $b ]] lalu echo "Angka sama" else echo "Angka tidak sama" fi

Simpan skrip dan jalankan. Dari gambar di bawah, Anda dapat melihat kami memasukkan nilai yang berbeda, dan skrip dapat memeriksa apakah nilainya sama atau tidak.

Variabel bash

Sekarang, mari kita lihat lebih dekat kodenya. Dua pernyataan gema pertama meminta pengguna untuk memasukkan input angka Pertama dan kedua. Itu Baca perintah akan menunggu pengguna memasukkan nomor dan menyimpannya ke variabel yang ditentukan. Dalam kasus kami, itu Sebuah dan b. Kami kemudian memiliki pernyataan if yang memeriksa apakah kedua nilai itu sama atau tidak.

Pernyataan bersyarat

Dalam bahasa pemrograman apa pun, pernyataan bersyarat mengontrol aliran program. Sepotong kode hanya akan dieksekusi ketika kondisi tertentu terpenuhi. Beberapa pernyataan kondisional yang paling umum termasuk "jika-maka-lain" dan "kasus".Di bawah ini adalah sintaks dasar dari pernyataan if-then-else.

jika [[ kondisi ]] maka  lain  fi

Lihatlah skrip di bawah ini, yang menggunakan pernyataan kondisional "jika-maka-lain".

#!/bin/bash echo "Masukkan Umurmu" baca umur if ((umur > 18 )) lalu echo "Kamu bisa pergi ke pesta" else echo "Kamu tidak berhak pergi ke pesta" fi

Pernyataan kondisional bash

Mari kita pergi melalui skrip di atas. Kami memiliki gema pernyataan yang meminta pengguna untuk memasukkan nomor usia mereka. Itu Baca pernyataan menyimpan usia yang dimasukkan ke variabel "usia".Kami kemudian memiliki pernyataan kondisional if-then-else yang memeriksa apakah usia lebih besar dari 18 sebelum menginstruksikan pengguna.

Loop

Loop biasanya digunakan ketika Anda ingin mengeksekusi sepotong kode beberapa kali. Misalnya, jika saya ingin menggemakan 1000 baris pernyataan “Selamat datang di Fosslinux,” saya akan membutuhkan 1000 pernyataan gema. Namun, dengan loop, yang perlu saya lakukan adalah menentukan berapa kali saya ingin pernyataan digaungkan atau dicetak di Terminal. Bash mendukung tiga jenis loop; Untuk Loop, Loop Sementara, dan Loop Sampai. Mari kita lihat masing-masing.

A For Loop digunakan untuk beralih melalui daftar data tertentu atau array. Di bawah ini adalah sintaks dasar Bash For Loop;

untuk Nilai dalam 1 2 3 4 5… N lakukan instruksi1 instruksi2 instruksi-N selesai

atau,

untuk VALUE dalam file1 file2 file3 lakukan instruksi1 pada $VALUE instruksi2 instruksi-N selesai

Perhatikan skrip di bawah ini. Itu berulang melalui hari-hari tertentu dalam seminggu dan mencetaknya di Terminal baris demi baris.

#Baca nama hari kerja di setiap iterasi perulangan untuk hari di Senin Selasa Rabu Kamis Jumat Sabtu Minggu do echo "$day" done

Mari simpan skrip sebagai UntukLoop.SH dan jalankan. Di bawah ini adalah tangkapan layar dari output.

Untuk Lingkaran

Itu hanyalah contoh sederhana dari apa yang dapat Anda lakukan dengan For Loop. Anda juga dapat menggabungkannya dengan pernyataan bersyarat untuk menyelesaikan tugas tertentu.

Loop Sementara menjalankan tugas tertentu sementara kondisi tertentu tetap Benar. Dalam setiap iterasi, loop pertama-tama akan memeriksa kondisi sebelum mengeksekusi instruksi. Ketika kondisinya Salah, loop akan berhenti. Sintaks dasar dari loop while bash adalah sebagai berikut:

sementara [CONDITION] lakukan [COMMANDS] selesai

Misalnya, kita dapat memiliki skrip yang akan mencetak pernyataan “Selamat datang di FOSSLINUX.KOM” 20 kali sampai variabel X diatur ke 20. Mari kita coba dan terapkan secara praktis. Perhatikan skrip di bawah ini.

#!/bin/bash x=1 while [ $x -le 20 ] lakukan echo "Selamat datang di FOSSLINUX.COM" x=$(( $x + 1 )) selesai

Mari simpan skrip sebagai WhileLoop.SH dan jalankan. Di bawah ini adalah tangkapan layar dari output.

Sementara Loop

Mari kita lihat skrip While Loop di atas. Kami pertama-tama mendeklarasikan variabel X dengan memberinya nilai 1. Kami kemudian membuat pernyataan While yang menampilkan pernyataan “Selamat datang di FOSSLINUX.COM” sedangkan X kurang dari 20. Terakhir, kami menambah X satu per satu setelah setiap iterasi.

Loop Bash Hingga digunakan untuk mengeksekusi serangkaian instruksi atau perintah selama kondisi yang ditetapkan bernilai false. Di bawah ini adalah sintaks dasar dari Sampai Loop.

sampai [CONDITION] melakukan [INSTARUCTIONS/COMMANDS] selesai

Mirip dengan While Loop, Hingga Loop pertama mengevaluasi kondisi yang ditetapkan sebelum mengeksekusi instruksi atau perintah. Jika kondisi bernilai false, instruksi dieksekusi. Loop dihentikan ketika kondisi bernilai true. Perhatikan contoh di bawah ini.

#!/bin/bash count=0 hingga [ $count -gt 5 ] lakukan echo Counter: $count ((count++)) done

Setelah kita simpan dan jalankan script di atas, kita mendapatkan output di bawah ini:

Sampai Loop

Skrip di atas pertama-tama buat jumlah variabel dan setel ke nol(0). Itulah kondisi yang mengontrol alur program kami our. Sampai Loop memeriksa apakah nilai hitungan lebih besar dari 5. Jika tidak, itu akan mencetak instruksi yang diteruskan. Namun, jika nilainya lebih besar dari 5, loop akan segera berakhir. Terakhir, kami menambah nilai count sebesar 1 (count++).

Fungsi Bash

Dalam pemrograman dan skrip, Fungsi digunakan untuk menyimpan potongan kode yang dapat digunakan kembali yang diperlukan untuk melakukan tugas tertentu. Oleh karena itu, jika Anda memiliki perintah serupa yang ingin Anda jalankan di bagian yang berbeda dalam skrip Anda, Anda tidak perlu menulis perintah ini berulang kali. Lampirkan mereka dalam suatu fungsi dan jalankan fungsinya sebagai gantinya.
Di bawah ini adalah sintaks dasar dari fungsi Bash.

nama_fungsi()    

atau,

fungsi nama_fungsi    

Mari kita buat skrip sederhana yang menggunakan fungsi. Pertama-tama kita membuat fungsi yang disebut "myFunction," yang mengeluarkan pernyataan "Halo, saya adalah fungsi pertama" saat dipanggil. Fungsi kedua, "myCities," sedikit lebih maju karena membutuhkan argumen yang diteruskan. Argumen diberikan setelah memanggil nama fungsi. Mereka dapat diakses dalam fungsi sebagai $1.

#!/bin/bash myFunction ()  echo "Halo saya fungsi pertama" echo "Halo saya fungsi pertama" echo  echo "Ini adalah fungsi kedua" function myCities ()  echo Halo $1  myFunction myCities Washington,D.C myCities Phoenix

Setelah menyimpan dan menjalankan skrip, kami mendapatkan output di bawah ini.

Fungsi

Menu Bash

Saat menulis skrip untuk melakukan tugas lanjutan, Anda mungkin memerlukan pengguna untuk memilih satu opsi dari beberapa opsi yang ditampilkan di Terminal. Untuk mencapai itu, kita akan menggunakan bash Pilih perintah.

Itu membuat skrip menu sederhana yang akan meminta pengguna untuk memilih distribusi Linux favorit mereka dari daftar. Perhatikan skrip di bawah ini.

#!/bin/bash #Cetak pesan untuk pengguna echo "Pilih Distribusi Linux favorit Anda" pilih distro di Ubuntu Fedora OpenSUSE DeepIN Parrot ArchLinux Kali lakukan #Cetak nilai yang dipilih jika [[ $distro == "Exit" ]] lalu exit 0 else echo "Distribusi Linux yang dipilih adalah $distro" selesai

Mari simpan skrip sebagai menu.sh dan jalankan. Kami mendapatkan output di bawah ini.

Menu Bash

Pada script di atas, kita memiliki daftar Tujuh Distribusi Linux dari pengguna akan memilih salah satu. Setelah mereka membuat pilihan, itu disimpan dalam variabel distro dan kemudian dicetak dengan menggabungkannya dengan string “Distribusi Linux yang dipilih adalah.” Menu pilih bash bisa sangat berguna, terutama ketika Anda memiliki banyak skrip yang melakukan tugas yang berbeda, dan seseorang harus memilih salah satu yang ingin mereka jalankan.

Hitung

Setiap bahasa pemrograman mendukung pelaksanaan operasi aritmatika, dan skrip bash tidak terkecuali. Namun, cara kami melakukan operasi aritmatika sedikit berbeda. Di bawah ini adalah salah satu cara Anda dapat melakukan operasi aritmatika di bash. Kita akan melihat empat jenis operasi aritmatika - Jumlah, pembagian, dan perkalian.

#!/bin/bash # Hitung hasil penjumlahan=$((70+15)) # Cetak nilai penjumlahan echo "sum = $result" # Hitung hasil pembagian=$((100/25)) # Cetak nilai pembagian echo "pembagian = $result" #Hitung Hasil Perkalian=$((15*15)) echo "Perkalian = $hasil"

Mari kita simpan skrip di atas sebagai aritmatika.sh dan jalankan. Kami mendapatkan output di bawah ini.

Hitung

Kesimpulan

Itu adalah panduan pemula yang lengkap untuk memulai dengan skrip Bash. Namun, ada lebih banyak Bash selain yang tercakup dalam tutorial ini. Salah satu tempat yang saya rekomendasikan untuk meningkatkan keterampilan Anda adalah Manual Referensi Bash GNU. Jika Anda menghadapi masalah atau komentar pada posting ini, jangan ragu untuk menekan komentar di bawah.

Cara mengunduh dan Memainkan Civilization VI Sid Meier di Linux
Pengenalan permainan Civilization 6 adalah konsep modern dari konsep klasik yang diperkenalkan dalam seri game Age of Empires. Idenya cukup sederhana;...
Cara Menginstal dan Memainkan Doom di Linux
Pengantar Doom Seri Doom berasal dari tahun 90-an setelah rilis Doom. Itu adalah hit instan dan sejak saat itu seri game telah menerima banyak penghar...
Vulkan untuk Pengguna Linux
Dengan setiap generasi baru kartu grafis, kami melihat pengembang game mendorong batas kesetiaan grafis dan selangkah lebih dekat ke fotorealisme. Tet...