Apa Fungsi "#!/bin/bash" pada Skrip Bash?

Ketika membicarakan dengan pemrograman Bash, kalian pasti sudah tidak asing dengan kode #!/bin/bash yang biasanya berada di dalam skrip Bash.

Apa arti kode tersebut?

Mari pelajari lebih lanjut dalam artikel berikut.

Apa itu ”#!/bin/bash”?

Nama dari kode #!/bin/bash adalah Shebang atau lebih tepatnya Bash Shebang.

Penulisan Shebang diawali dengan #! dan diikuti dengan lokasi path Shell berada, seperti pada #!/bin/bash.

Shebang adalah cara kita untuk menginstruksikan sistem operasi agar menggunakan jenis interpreter tertentu.

Jadi kesimpulannya, #!/bin/bash mempunyai fungsi untuk menginstruksikan sistem operasi agar menggunakan Bash sebagai interpreter.

Pentingnya Menggunakan Shebang

Penggunaan Shebang dalam pembuatan skrip Shell amatlah penting, karena di dunia ini ada berbagai jenis Shell yang memiliki syntax dan fitur yang berbeda-beda.

Jadinya, jika kalian tidak menggunakan shebang, akan ada kemungkinan skrip Shell tidak berjalan normal pada Zsh, Fish, dan sebagainya.

Misalnya, skrip Shell berikut akan menghasilkan hasil berbeda di Bash dan Zsh.

fruits=("apple" "watermelon" "dragonfruit" "rambutan")
echo ${fruits[0]}
echo ${fruits[1]}

Hasilnya ketika skrip dijalankan dengan Bash:

$ ./script.sh
apple
watermelon

Hasilnya ketika skrip dijalankan dengan Zsh:

$ ./script.sh

apple

Coba tebak! Apa perbedaan dari kedua hasil di atas?

Pada Bash indeks array dimulai dari 0 sedangkan Zsh indeks array dimulai dari 1.

Sehingga hasil dari Bash akan menghasilkan apple & watermelon sedangkan hasil dari Zsh akan menghasilkan apple saja.

Hasilnya akan berbeda, jika kalian menambahkan Shebang.

#!/bin/bash
fruits=("apple" "watermelon" "dragonfruit" "rambutan")
echo ${fruits[0]}
echo ${fruits[1]}

Hasilnya:

$ ./script.sh
apple
watermelon

Dari contoh perbedaan di atas saja, dapat disimpulkan, ada kemungkinan program shell tidak berjalan dengan normal ketika dijalankan di shell yang berbeda apabila tidak menggunakan Shebang.

Contoh Penggunaan Shebang yang Lainnya

Penggunaan Shebang tidak terbatas pada pemrograman Shell saja.

Kalian dapat menggunakan Shebang dengan bahasa interpreter lain, seperti python dan node.js.

Misalnya.

#!/usr/bin/python

print('hello world')

Program dapat dieksekusi secara langsung seperti pada perintah berikut:

$ ./hello.py