Apa Itu Bash ?
Bash adalah sebuah shell, atau interpreter perintah baris, untuk sistem operasi GNU. Namanya merupakan singkatan dari “Bourne-Again SHell“, diambil dari nama Stephen Bourne, penulis shell Unix /bin/sh.
Bash sangat kompatibel dengan sh dan menyertakan fitur-fitur bermanfaat dari shell Korn (ksh) dan shell C (csh). Ia merupakan implementasi lengkap spesifikasi shell POSIX.2.

Fitur Bash
Berikut ini adalah beberapa fitur yang dimiliki oleh Bash :
Pengeditan dan Pelengkapan
Bash menawarkan sebuah fasilitas pengeditan perintah baris yang mengijinkan user untuk mengedit perintah baris menggunakan perintah-perintah emacs atau vi. Pengeditan mengijinkan perbaikan dilakukan tanpa perlu menghapus hingga tempat kesalahan atau memulai baris baru. Fasilitas pengeditan mencakup sebuah fitur yang mengijinkan user untuk melengkapi perintah dan nama file.

Sejarah dan Pemasukan Kembali Perintah
Fitur sejarah Bash mengingat perintah-perintah yang dimasukkan ke shell dan memungkinkan mereka dipanggil kembali dan dieksekusi.

Kendali Kerja
Pada sistem yang mendukungnya, Bash menyediakan sebuah interface ke fasilitas kendali kerja sistem operasi, yang memungkinkan proses-proses untuk di-suspend dan dimulai kembali, dan memindahkan antara kerja foreground dan background.

Fungsi Shell dan Alias
Mekanisme ini tersedia untuk mengikatkan identifier yang dipilih user ke sebuah daftar perintah yang akan dieksekusi ketika identifier digunakan sebagai nama perintah. Fungsi-fungsi memungkinkan adanya variabel lokal dan rekursi, dan mempunyai akses ke lingkungan shell pemanggil. Alias dapat digunakan untuk membuat sebuah mnemonic untuk sebuah perintah, ekspansi sebuah kata tunggal menjadi perintah yang kompleks, atau memastikan bahwa sebuah perintah dipanggil dengan option yang tepat.

Array
Versi Bash yang lebih baru daripada bash-2.0 mendukung array terindeks dengan ukuran tidak terbatas. Subskrip untuk sebuah array adalah ekspresi aritmatika. Array dapat diberi nilai dengan sebuah sintaks penugasan campuran, dan beberapa fungsi built-in memiliki option untuk beroperasi pada variabel array.

Aritmatika
Bash memungkinkan user untuk melakukan aritmatika integer dalam sembarang basis mulai dari dua hingga enam puluh empat. Hampir semua operator aritmatika bahasa C tersedia dengan sistem dan presedensi yang sama. Ekspansi aritmatika memungkinkan sebuah ekspresi aritmatika untuk dievaluasi dan hasilnya dimasukkan ke perintah baris. Variabel shell dapat digunakan sebagai operand, dan nilai sebuah ekspresi dapat diberikan ke sebuah variabel.
Sebuah ekspresi aritmatika dapat digunakan sebagai sebuah perintah; status exit sebuah perintah adalah nilai ekspresi.

ANSI-C Quoting
Terdapat sintaks quoting baru yang memungkinkan backslash-escaped characters dalam string untuk diekspansikan menurut standar ANSI-C.

Kemampuan I/O Yang Diperluas
Bash menyediakan beberapa fitur input dan output yang tidak ada dalam sh, termasuk kemampuan untuk menspesifikasikan sebuah file atau deskriptor file untuk input dan output, baca atau tulis ke proses asinkronous menggunakan named pipes, membaca baris yang berakhiran dengan backslash, menampilkan sebuah prompt pada terminal sebelum pembacaan, format menu dan menginterpretasikan responnya ke mereka.

Keamanan
Bash menyediakan sebuah lingkungan shell yang dibatasi. Pengendalian eksekusi skrip setuid/setgid juga dimungkinkan.

Mode POSIX
Bash hampir sesuai dengan POSIX.2. Mode POSIX merubah beberapa bidang agar membuat perilaku Bash sesuai dengan standar. Dalam mode POSIX, Bash adalah POSIX.2 compliant.

Membuat Skrip Shell
Shell skrip umumnya ditulis dengan menggunakan teks editor, misalnya vi atau emacs, yang biasanya terdiri dari perintah-perintah dan komentar. Komentar ditandai dengan tanda “#” dan terdiri dari teks yang memberitahu apa yang terjadi.
Berikut ini adalah contoh sebuah shell skrip sederhana :
#!/bin/bash

echo “Hello World”
echo “This is my first Bash script”
Simpanlah ke dalam file hello.sh. Kemudian anda dapat membuat skrip tersebut dapat dijalankan, dengan cara :
• Menjalankan bash hello.sh
• Merubah mode file tersebut menjadi dapat dieksekusi, chmod 755 hello.sh,

kemudian jalankan dengan cara ./hello.sh

Baris pertama skrip di atas akan menandakan program yang akan mengeksekusi skrip. Baris ini biasanya disebut “shbang”.
Simbol “#!” adalah simbol ajaib yang digunakan oleh kernel untuk mengindentifikasikan program yang akan menginterpretasi baris-baris skrip. Baris ini harus berada paling atas dalam skrip anda.
Baris ketiga akan mencetak string “Hello World” dan diakhiri dengan perpindahan baris. Baris keempat mencetak string “This is my first Bash script”.

Sumber: http://astinaruto.blogspot.com/2010/05/apa-itu-bash-bash-adalah-sebuah-shell.html