featured-image-belajar-pemrograman-bash-shell-di-linux-2-output-input

Belajar Pemrograman Bash Shell di Linux 1: Pengenalan

Dalam materi belajar ini Anda akan mengenal pemrograman bash shell di Linux. Dimulai dengan pengertian bash, memeriksa shell yang aktif sebagai langkah persiapan sebelum memulai pemrograman bash, dan akhirnya Anda akan membuat dua bash script sederhana dan menjalankannya.


Daftar Materi Belajar Pemrograman Bash Shell di Linux:
1. Pengenalan (Materi Ini)
2. Output


Apa Itu bash?

Singkatnya, bash merupakan sebuah program komputer seperti halnya program-program lain pada komputer, namun bash didesain agar Anda dapat berkomunikasi dengannya melalui perintah yang Anda berikan dan respon yang Anda terima.

Setiap program di komputer memiliki kemampuan untuk dapat mengerjakan tugas-tugas spesifik yang membantu memudahkan pekerjaan user, antara lain memutar lagu, mengakses website, melakukan penghitungan, dan lain sebagainya. Akan tetapi, bash tidak melakukan tugas-tugas tersebut. Bash berperan untuk menerima perintah dari Anda sebagai user dan mengerjakan perintah tersebut. Sehingga, agar Anda dapat memberikan perintah yang dapat dimengerti oleh bash dengan baik, diciptakanlah bahasa untuk komunikasi tersebut. Bahasa itulah yang disebut bahasa bash shell.

Bash (Bourne Again shell) hanya merupakan salah satu dari beberapa program yang bertindak untuk menerima perintah dari user untuk berinteraksi dengan program lain. Program seperti ini dikenal sebagai program shell. Beberapa program shell yang terkemuka selain bash antarai lain C shell (csh), Bourne shell (sh), Korn shell (ksh), dan Zshell (zsh). Masing-masing shell memiliki bahasa yang berbeda, meskipun dijumpai banyak kesamaan perintah-perintah yang digunakan. Perlu diingat bahwa artikel ini akan membahas mengenai pemrograman bash shell, sehingga pastikan bahwa Anda mengeksekusi kode bash shell pada bash shell, bukan shell yang lain.

Memeriksa Shell Aktif

Untuk memastikan bahwa Anda sedang menggunakan bash, coba jalankan perintah berikut:

$ echo "$BASH_VERSION"
4.3.46(1)-release

Jika Anda tidak memperoleh output apa-apa atau memperoleh peringatan undefined variable, maka kemungkinkan Anda sedang tidak menggunakan bash. Anda dapat menjalankan bash dengan memanggil perintah bash.

Perintah echo yang digunakan di atas merupakan salah satu perintah bawaan bash yang bertugas untuk menampilkan informasi ke standard output, yang defaultnya adalah monitor. $BASH_VERSION merupakan sebuah variabel internal bash yang menunjukkan informasi mengenai versi bash.

Cara lain untuk memeriksa shell yang sedang aktif, Anda dapat menjalankan perintah berikut:

$ echo $0
bash

$0 akan memberikan nilai balik berupa nama dari proses yang sedang dijalankan. Jika dijalankan melalui shell, maka akan berisi nama shell yang sedang aktif, pada kasus ini bash. Dan jika digunakan di shell script, maka berisi nama script yang sedang dijalankan.

Membuat Shell Script

Bash dapat dijalankan dalam 2 mode:

  • Mode Interaktif
    Anda telah menggunakan mode ini ketika menjalankan echo $0 di atas untuk memeriksa shell yang sedang aktif. Bash shell menunggu perintah dari Anda, dan seketika setelah Anda menekan tombol Enter, perintah tersebut dikerjakan oleh bash. Setelah selesai, bash kembali siap menerima perintah dari Anda.
  • Mode non-interaktif
    Anda dapat menuliskan rentetan perintah dalam sebuah file script untuk dieksekusi oleh bash. Anda cukup menyebutkan nama file yang berisikan script tersebut.

Pada bagian ini kita akan belajar menggunakan mode non-interaktif, yaitu dengan membuat dan menjalankan dua bash script sederhana.

Contoh 1

Buat sebuah file dengan nama hello. Anda dapat menggunakan editor apa saja yang Anda kehendaki, vi, vim, emacs, nano, gedit, atau yang lainnya. Kemudian ketikkan script berikut:

#!/bin/bash
echo "Hello World!"
echo "Anda sedang berada di direktori $PWD"

Simpan file, kemudian rubah hak akses file tersebut agar dapat dieksekusi:

$ chmod 755 hello

Jalankan shell script pertama kita:

$ ./hello
Hello World!
Anda sedang berada di direktori /home/user/Documents/Writing/Code/bash

Penjelasan untuk script hello:

  • #!/bin/bash menyatakan bahwa script tersebut harus dijalankan di bash shell. /bin/bash merupakan lokasi dari bash interpreter yang akan menerjemahkan dan menjalankan bash script. Anda dapat mendapatkan lokasi ini dengan menjalankan perintah:
    $ which bash
    /bin/bash
    
  • $PWD merupakan sebuah variabel yang sudah didefinisikan oleh bash. Dengan meletakkan variabel dalam tanda petik dua (“), bash akan mengganti pernyataan variabel tersebut dengan nilainya, kemudian barulah perintah (dalam kasus ini perintah echo) dijalankan. Nilai variabel $PWD adalah path direktori aktif, layaknya output dari perintah pwd.

Contoh 2

Berikut merupakan sebuah contoh lain:

#!/bin/bash
# Menampilkan beberapa informasi
 
# Menampilkan nama user
echo "Halo $USER!"
 
# Menampilkan nama file shell script yang sedang dijalankan
echo "Anda sedang menjalankan file bash script '$0'"
 
# Menampilkan tanggal lokal
echo -n "Hari ini tanggal "; date +"%d %B %Y"
 
# Menampilkan nama direktori aktif
echo -n "Anda sedang berada di lokasi "; pwd
 
# Menampilkan isi direktori aktif
echo "Berikut merupakan beberapa file yang terdapat pada direktori aktif:";
ls

Simpan file tersebut dengan nama tampilkaninfo, kemudian rubah hak
akses file agar dapat dieksekusi, dan jalankan.

$ chmod 755 tampilkaninfo
$ ./tampilkaninfo
Halo user!
Anda sedang menjalankan file bash script './tampilkaninfo'
Hari ini tanggal 06 November 2016
Anda sedang berada di lokasi /home/user/Documents/Writing/Code/bash
Berikut merupakan beberapa file yang terdapat pada direktori aktif:
hello  tampilkaninfo

Penjelasan untuk script tampilkaninfo:

  • Baris yang diawali dengan #, selain baris #!/bin/bash, merupakan komentar dan akan diabaikan oleh shell
  • Variabel $USER menyimpan nama user. $USER merupakan salah satu variabel lingkungan (environment variable) yang telah didefinisikan nilainya oleh sistem, dan perubahan terhadap nilai variabel lingkungan mempengaruhi kerja sistem.
  • Telah dijelaskan sebelumnya, jika variabel $0 digunakan di shell script, maka akan memiliki nilai nama file script tersebut.
  • Dengan menggunakan argumen -n pada echo, teks tidak diakhiri dengan newline (ganti baris). Sehingga tulisan Hari ini tanggal dan hasil pemanggilan perintah date +"%d %B %Y" (untuk menampilkan tanggal lokal saat script dijalankan dengan format tanggal “tanggal namabulan tahun”) dapat ditampilkan dalam baris yang sama.
  • Tulisan Anda sedang berada di lokasi dengan hasil pemanggilan perintah pwd juga dapat ditampilkan pada baris yang sama dengan meniadakan newline pada akhir output pemanggilan echo.

Referensi:

Muhammad Ikhsan

Senang belajar dan berbagi ilmu.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *