Petunjuk Penggunaan Bash Script (dengan Contoh)
Sebagai salah satu tool scripting populer pada Unix, Bash sangatlah berguna bagi para user Linux atau SysAdmin. Nama Bash sendiri merupakan akronim dari Bourne Again Shell. Di artikel ini, Anda akan mempelajari cara menggunakan bash script
Unix memiliki 2 kategori utama shell.
- Bourne-type shell
- C shell
Bourne shell diklasifikasikan lebih jauh sebagai:
- Korn Shell (ksh)
- Bourne shell (sh)
- POSIX shell (sh)
- Bourne Again Shell (bash)
C shell pun memiliki lebih jauh seperti:
- C shell (csh)
- TENEX (TOPS) C shell (tcsh)
Bash script merupakan komponen yang sangat berpengaruh dan berguna bagi pengembangan web. Script ini akan mempersingkat task yang berulang ke satu line function call. Dengan demikian, command yang panjang akan dilebur menjadi satu kode yang mudah dijalankan.
Bash Linux tersedia di hampir semua varian Linux dan tidak memerlukan instalasi terpisah. Untuk mengecek daftar shell yang tersedia, gunakan command di bawah ini:
cat /etc/shells
Output dari command tersebut akan seperti ini:
/bin/bash /bin/sh /bin/tcsh /bin/csh
Kenapa Menggunakan Bash Function?
Bash Function dapat:
- Mengeliminasi task yang berulang-ulang.
- Menghemat waktu.
- Menghadirkan urutan aktivitas yang terstruktur, modular, dan terformat.
- Dengan bash function, Anda bisa menyediakan dynamic value pada command dengan menggunakan command line argument.
- Menyederhanakan command yang kompleks menjadi satu command aktif yang bisa dijalankan.
- Digunakan sesering mungkin oleh user. Satu bash function untuk berkali-kali pemakaian.
- Membuat flow (aliran) logika.
- Digunakan di awal server (server start-up) atau dengan menambahkan cron job terjadwal.
- Debug command.
- Membuat shell command yang interaktif.
Sebagai salah satu tool terbaik, bash akan mempermudah alur kerja dan pembuatan proyek yang Anda lakukan. Banyak kemungkinan yang bisa Anda buat dengan bash function, tapi di artikel ini kami hanya akan membahas dasar-dasarnya saja. Sudah siap menulis script pertama?
Menggunakan Bash
Untuk menggunakan bash, Anda harus terhubung ke server VPS terlebih dulu melalui SSH. Setelah berhasil masuk ke server VPS, Anda siap untuk menjelajahi penggunaan bash function Linux.
Untuk lebih memahami opsi dasar command, cek laman manual bash dengan mengetikkan:
man bash
Buat file .sh dengan menggunakan VIM Editor. Jalankan command di bawah ini untuk membuat file:
vim sampleFunction.sh
Setelah itu, Anda sudah bisa mengedit file .sh.
Output komprehensif tentang command dan penggunaan Bash akan muncul. Setiap bash script harus diawali dengan line di bawah ini:
#!/bin/bash
Command di bawah ini menampilkan path dari bash script:
which bash
Outputnya seperti berikut:
/bin/bash
Bash syntax umumnya seperti ini:
function functionName { first command second command }
Juga dapat ditulis sebagai:
functionName (){ first command second command }
Pada satu line, dapat ditulis:
functionName() { first command; second command; } caca
Contoh penggunaan function di atas dapat Anda lihat di bawah ini. Dengan function ini, pertama-tama Anda akan membuat direktori, kemudian mengubah path-nya agar mengarah ke direktori baru:
sampleFunction () { mkdir -p $1 cd $1 }
$1 merepresentasikan command line input argument. Bash akan membuat input dinamis di dalam command. Untuk memverifikasi fungsi ini, jalankan:
sampleFunction myDir
myDir merupakan nama direktori yang valid untuk dibuat. Apabila Anda mengecek direktori yang berfungsi saat ini dengan menggunakan command pwd, maka Anda akan lihat bahwa Anda berada di direktori myDir yang baru saja dibuat.
Begitupun dengan command lain yang umum digunakan dapat ditambahkan sebagai bash function.
Jika sudah selesai menggunakan VIM editor untuk mengedit file .sh, simpan dan keluar dari tool, lalu masuk ke mode command dengan menekan tombol ESC, kemudian ketik :wq untuk simpan perubahan dan keluar dari mode.
Dasar Bash Function
Salah satu contoh dasar bash function adalah sebagai berikut:
#!/bin/bash testfunction(){ echo "My first function" } testfunction
Jika script ini disimpan di testFunction.sh dan dijalankan sebagai ./testFunction.sh, maka outputnya akan seperti ini:
My first function
Echo menampilkan output pada console. Jika Anda mengganti posisi definisi fungsi dengan calling, maka hasilnya akan error. Snippet di bawah ini menunjukkan hasil atau output error.
#!/bin/bash testfunction testfunction(){ echo "My first function" }
Jadi, sebagai langkah pertama, Anda harus mendefinisikan fungsi lalu meng-invoke-nya.
Bash functions dapat menerima sejumlah parameter. Pada contoh di bawah ini, bash function menerima dua parameter:
#!/bin/bash testfunction(){ echo $1 echo $2 }
testfunction "Hello" "World"
Anda juga dapat menggunakan interactive input dan menjalankan bash function. Berikut adalah contohnya:
#!/bin/bash addition(){ sum=$(($1+$2)) return $sum } read -p "Enter a number: " int1 read -p "Enter a number: " int2 add $int1 $int2 echo "The result is : " $?
Pada contoh di atas, value tambahan ditetapkan pada variable sum dan dikembalikan dari fungsi. Interactive input ‘diambil’ dengan menggunakan read untuk kedua angka parameter tersebut. Alhasil, outputnya ditampilkan dengan menggunakan $? yang menyimpan value return $sum dari fungsi.
Bash function selalu mengembalikan satu value.
Untuk menulis atau meninggalkan catatan dalam file, tambahkan simbol #.
Bash script mendukung:
- While loop
- For loop
- If statement
- And logic
- Or logic
- Else If statement
- Case Statement
Di bawah ini merupakan contoh While loop.
#!/bin/bash isvalid=true count=1 while [ $isvalid ] do echo $count if [ $count -eq 5 ]; then break fi ((count++)) done
Contoh di atas menggunakan statement while dan dan if. Script tersebut mengeksekusi while loop sebanyak 5 kali sebelum keluar setelah memeriksa statemen kondisional if.
Outputnya akan seperti ini:
1 2 3 4 5
For loop dapat digunakan untuk menambah serta mengurangi counter. Berikut ini merupakan contoh dari for loop:
#!/bin/bash for (( count=10; count>0; count-- )) do echo -n "$count " done
Output for loop ini akan seperti ini:
10 9 8 7 6 5 4 3 2 1
Pada bash, simbol && merepresentasikan logika AND, sedangkan simbol || merepresentasikan logika OR.
Dengan statement If, Anda akan mendefinisikan Else if. Salah satu contohnya seperti di bawah ini:
#!/bin/bash echo "Enter a valid number" read n if [ $n -eq 101 ]; then echo "This is first number" elif [ $n -eq 510 ]; then echo " This is second number " elif [ $n -eq 999 ]; then echo " This is third number " else echo "No numbers over here" fi
Contoh yang sama seperti di atas juga dapat ditulis menggunakan case statement, seperti ini:
#!/bin/bash echo " Enter a valid number" read n case $n in 101) Echo " This is the first number " ;; 510) echo " This is the second number " ;; 999) echo " This is the third number " ;; *) echo " No numbers over here " ;; esac
Pada case statement, simbol ;; merepresentasikan case break.
Kesimpulan
Sampai di sini, Anda sudah memahami dasar-dasar bash function. Bash merupakan tool yang sangat berguna serta mudah dipelajari. Oleh karena itu, galilah terus rasa ingin tahu Anda dengan mencari contoh-contoh penggunaan bash dan memaksimalkannya dalam pengembangan web. Selamat mencoba!
Komentar
June 29 2022
Tolong lebih diperbanyak tutorial bash shell, saya ingin belajar