Bash adalah shell default pada banyak distribusi Linux, termasuk Kali Linux. Shell ini menerjemahkan perintah yang kita ketik di terminal menjadi aksi yang dapat dimengerti sistem operasi. Dengan memahami dasar-dasar Bash, kita bisa beralih dari mengetik perintah secara manual ke menuliskan skrip yang menjalankan rangkaian perintah—terutama tugas yang berulang—secara otomatis. Skrip Bash umum dipakai untuk mengotomatiskan tugas berulang di terminal, seperti pencadangan file, pengecekan sistem, atau pengolahan log.

Tutorial ini ditujukan untuk pengguna yang ingin memulai otomasi dasar di lingkungan Linux secara etis dan legal. Kami hanya membahas operasi pada sistem milik sendiri atau sistem yang kita Kelola dengan izin. Kami tidak akan menyentuh topik yang melibatkan sistem pihak lain tanpa izin. Berikut adalah panduan langkah demam langkah untuk menulis skrip Bash sederhana namun produktif.

Persiapan Lingkungan Kerja

Sebelum menulis skrip Bash, pastikan sistem kita sudah dilengkapi dengan Bash. Di hampir seluruh distribusi Linux—termasuk Kali Linux—Bash sudah terpasang secara default. Kita bisa memverifikasinya dengan perintah berikut di terminal:

bash --version

Jika output menampilkan versi Bash, berarti shell sudah siap digunakan. Selain itu, kita juga perlu sebuah editor teks untuk menulis skrip. Beberapa pilihan populer termasuk nano, vim, atau gedit. Untuk pemula, nano biasanya dianggap paling ramah karena antarmukanya sederhana dan langsung digunakan di terminal.

Selanjutnya, kita perlu membuat direktori khusus untuk menyimpan skrip-skrip Bash agar tidak tercampur dengan berkas lain. Misalnya, kita bisa membuat folder bernama scripts di direktori rumah:

mkdir ~/scripts

Setelah itu, setiap kali kita ingin menulis skrip baru, cukup buka editor teks dan simpan berkasnya di dalam folder ini. Salah satu keuntungan besarnya adalah kita bisa menemukan semua skrip otomasi kita di satu tempat yang sama.

Struktur Dasar Skrip Bash

Setiap skrip Bash dimulai dengan shebang pada baris pertama. Shebang adalah karakter #! diikuti dengan path interpreter Bash, biasanya /bin/bash atau /usr/bin/env bash. Baris ini memberi tahu sistem bahwa skrip ini harus dijalankan menggunakan Bash, bukan shell lain. Berikut adalah struktur paling sederhana dari sebuah skrip Bash:

#!/bin/bash
echo "Halo, Dunia!"

Simpan berkas ini dengan nama halo.sh, lalu beri izin eksekusi agar bisa langsung dijalankan di terminal:

chmod +x halo.sh

Setelah itu, jalankan skripnya:

./halo.sh

Jika semuanya benar, terminal akan menampilkan teks “Halo, Dunia!”. Langkah chmod +x penting karena tanpanya, sistem tidak menganggap berkas ini sebagai program yang bisa dieksekusi.

Dalam banyak kasus, kita tidak perlu memberi izin eksekusi terlebih dahulu. Sebagai gantinya, kita bisa langsung memanggil Bash dan memberi nama skrip sebagai argumen:

bash halo.sh

Metode ini berguna saat kita hanya ingin menguji skrip dari terminal tanpa mengubah izin berkasnya. Namun, untuk penggunaan jangka panjang, memberi izin eksekusi tetap merupakan praktik yang disarankan agar skrip bisa dipanggil secara langsung kemana saja.

Variabel dan Pengguna Masuk

Salah satu kekuatan utama Bash adalah kemampuannya untuk menerima masukan dari pengguna dan menyimpannya dalam variabel. Ini memungkinkan kita membuat skrip yang dinamis dan dapat digunakan kembali untuk berbagai skenario. Misalnya, skrip berikut meminta nama pengguna dan kemudian menampilkannya kembali:

#!/bin/bash
echo "Siapa nama kamu?"
read nama
echo "Halo, $nama. Selamat belajar Bash!"

Di sini, perintah read nama menunggu pengguna mengetik sesuatu dan menekan Enter. Nilai yang dimasukkan kemudian disimpan dalam variabel nama. Kita bisa merujuk ke variabel tersebut dengan menuliskan $nama atau ${nama}.

Jika ingin membuat skrip yang menerima argumen langsung dari baris perintah, kita bisa menggunakan variabel khusus seperti $1, $2, dan seterusnya. Berikut adalah contoh yang lebih praktis:

#!/bin/bash
echo "Halo, $1. Selamat datang di sistem kami!"

Simpan sebagai ucapan.sh, beri izin eksekusi, lalu jalankan:

chmod +x ucapan.sh
./ucapan.sh Andi

Skrip akan menerima “Andi” sebagai argumen pertama dan menampilkannya. Ini sangat berguna saat kita ingin membuat skrip pembantu yang menerima parameter tertentu setiap kali dijalankan.

Pengondisian dan Perulangan Sederhana

Untuk membuat skrip benar-benar berguna dalam otomasi, kita perlu menggunakan struktur kontrol seperti pernyataan bersyarat (if) dan perulangan (for, while). Struktur ini memungkinkan skrip untuk membuat keputusan berdasarkan kondisi tertentu. Misalnya, kita bisa membuat skrip yang memeriksa apakah sebuah berkas ada sebelum mencadangkannya:

#!/bin/bash
echo "Masukkan nama berkas:"
read berkas

if [ -f "$berkas" ]; then
    cp "$berkas" "${berkas}.backup"
    echo "Berkas telah dicadangkan."
else
    echo "Berkas tidak ditemukan."
fi

Di sini, [ -f "$berkas" ] adalah tes kondisi yang memeriksa apakah berkas yang dimasukkan oleh pengguna memang ada. Jika ada, maka skrip akan menduplikat berkas tersebut sebagai cadangan. Jika tidak, pesan kesalahan akan ditampilkan.

Selain if, kita juga bisa menggunakan perulangan for untuk melakukan operasi yang sama pada sekumpulan item. Berikut adalah contoh sederhana yang mencetak nomur 1 hingga 5:

#!/bin/bash
for i in 1 2 3 4 5; do
    echo "Iterasi ke-$i"
done

Perulangan ini berguna saat kita ingin menerapkan tugas yang sama ke banyak berkas atau direktori sekaligus. Misalnya, mengganti nama seluruh berkas dengan ekstensi tertentu, atau memindai seluruh berkas log dalam sebuah folder.

Contoh Praktis: Pencadangan Otomatis

Salah satu penerapan paling umum dari skrip Bash adalah membuat sistem pencadangan otomatis. Dengan skrip sederhana, kita bisa menyalin berkas penting ke lokasi lain—misalnya, ke drive eksternal atau ke folder khusus—tanpa harus melakukannya secara manual setiap kali. Berikut adalah contoh skrip dasar untuk mencadangkan folder rumah pengguna:

#!/bin/bash
tanggal=$(date +%Y%m%d)
nama_folder="cadangan_$tanggal"
mkdir "$nama_folder"
cp -r ~/penting/* "$nama_folder"/
echo "Pencadangan selesai. Simpan di $nama_folder"

Skrip ini menggunakan perintah date untuk menghasilkan stempel waktu yang unik, yang kemudian digunakan sebagai bagian dari nama folder cadangan. Dengan demikian, setiap kali skrip dijalankan, cadangan baru akan dibuat tanpa menimpa yang sebelumnya.

Agar skrip ini lebih aman, kita bisa menambahkan logika untuk memastikan folder sumber memang ada sebelum memulai proses penyalinan. Selain itu, kita juga bisa menjadwalkan skrip ini agar berjalan otomatis setiap hari menggunakan utilitas seperti cron, yang tersedia di hampir semua sistem Linux.

Referensi dan Pengembangan Lanjutan

Setelah nyaman dengan konsep dasar, kita bisa memperluas pengetahuan dengan mendalami topik seperti manipulasi berkas, pemrosesan teks dengan grep, awk, dan sed, serta penggunaan fungsi didalam skrip. Dokumentasi resmi Bash—yang bisa diakses melalui man bash di terminal—merupakan sumber referensi yang sangat kaya dan lengkap.

Untuk pembelajaran lanjutan yang berfokus pada penggunaan Bash dalam konteks keamanan dan analisis sistem, situs seperti kalilinux.net dan kalilinux.info menyajikan artikel serta diskusi yang relevan. Meskipun fokus situs tersebut adalah pada penggunaan Kali Linux untuk profesi keamanan siber, banyak prinsip penggunaan terminal dan skrip yang diajarkan juga berlaku untuk otomasi umum.

Bash scripting adalah keterampilan yang bisa dikembangkan secara bertahap. Mulai dari skrip sederhana, kita bisa perlahan menyatukan berbagai komponen menjadi alat otomatisasi yang kuat dan andal. Seiring kita menghadapi kebutuhan nyata—seperti mengelola banyak berkas, memproses log sistem, atau mengatur rutinitas pengelolaan server—kit akan mulai melihat betapa fleksibel dan efisiennya shell scripting dalam meningkatkan produktivitas harian di lingkungan Linux.

Software terkait: Teknologi Sibuhuan