30 Contoh Skrip Bash¶
Dalam artikel ini, kita akan membahas 30 contoh skrip Bash yang praktis dan mudah dipahami, beserta penjelasan detail dan cuplikan kode.
Hello World¶
Mari kita mulai dengan contoh klasik - skrip "Halo Dunia". Buka editor teks favorit Anda dan buat berkas baru bernama hello.sh. Ketik kode berikut:
#!/bin/bash
echo "Hello, World!"
Simpan berkas dan buka terminal Anda. Arahkan ke direktori tempat Anda menyimpan skrip dan jalankan perintah berikut:
Skrip akan menampilkan "Halo, Dunia!" di terminal.
Variabel dan Input Pengguna¶
Bash memungkinkan Anda mendeklarasikan variabel dan berinteraksi dengan pengguna. Berikut contoh yang meminta nama pengguna dan kemudian menampilkan sapaan yang dipersonalisasi:
#!/bin/bash
echo "What is your name?"
read name
echo "Hello, $name! Nice to meet you."
Arithmetic Operations¶
Bash dapat melakukan operasi aritmatika dasar. Mari kita buat skrip yang menambahkan dua angka:
#!/bin/bash
echo "Enter the first number:"
read num1
echo "Enter the second number:"
read num2
sum=$((num1 + num2))
echo "The sum is: $sum"
Conditional Statements¶
Pernyataan kondisional memungkinkan Anda melakukan berbagai tindakan berdasarkan kondisi tertentu. Berikut contoh yang memeriksa apakah suatu angka positif, negatif, atau nol:
#!/bin/bash
echo "Enter a number:"
read num
if ((num > 0)); then
echo "The number is positive."
elif ((num < 0)); then
echo "The number is negative."
else
echo "The number is zero."
fi
Loops¶
Perulangan digunakan untuk mengulang blok kode beberapa kali. Berikut contoh perulangan for yang mencetak angka dari 1 hingga 5:
#!/bin/bash
for ((i=1; i<=5; i++)); do
echo $i
done
File Operations¶
Bash menyediakan alat yang ampuh untuk bekerja dengan berkas. Mari kita buat skrip yang memeriksa keberadaan suatu berkas dan menampilkan isinya jika ada:
#!/bin/bash
echo "Enter a file name:"
read -r filename
if [ -f $filename ]; then
echo "File exists. Here is its content:"
cat $filename
else
echo "File not found."
fi
String Manipulation¶
Bash memungkinkan Anda memanipulasi string dengan mudah. Berikut contoh yang mengonversi string menjadi huruf kapital:
#!/bin/bash
echo "Enter a string:"
read input
uppercase=$(echo $input | tr '[:lower:]' '[:upper:]')
echo "Uppercase: $uppercase"
Command-Line Arguments¶
Anda dapat meneruskan argumen ke skrip Bash saat menjalankannya dari baris perintah. Berikut contoh yang mencetak semua argumen yang diteruskan ke skrip:
#!/bin/bash
echo "Arguments: $@"
Simpan skrip sebagai args.sh dan jalankan dengan perintah berikut:
bash args.sh arg1 arg2 arg3
Skrip akan menampilkan: “Argumen: arg1 arg2 arg3”.
Functions¶
allowFunctions memungkinkan Anda mengelompokkan kode dan menggunakannya kembali. Berikut contoh fungsi yang menghitung faktorial suatu angka
#!/bin/bash
factorial() {
local n=$1
if [ $n -eq 0 ]; then
return 1
else
return $(($n * $(factorial $(($n-1)))))
fi
}
Berikut contoh penggunaan fungsi tersebut:
$ factorial 5
120
Environment Variables¶
Bash menyediakan akses ke berbagai variabel lingkungan yang menyimpan informasi tentang sistem. Berikut contoh yang menampilkan nama pengguna pengguna saat ini:
#!/bin/bash
echo "Current user: $USER"
Exit Status¶
Setiap perintah di Bash mengembalikan status keluar. Nilai 0 menunjukkan keberhasilan, sedangkan nilai selain nol menunjukkan kegagalan. Berikut contoh yang memeriksa status keluar suatu perintah:
#!/bin/bash
ls
if [ $? - eq0 ]; then
echo "Command executed successfully."
else
echo "Command failed."
fi
Reading from a File¶
Bash memungkinkan Anda membaca data dari sebuah berkas dan memprosesnya. Berikut contoh yang membaca berkas baris demi baris dan menampilkan isinya:
#!/bin/bash
echo "Enter a file name:"
read filename
while IFS= read -r line; do
echo "$line"
done < $filename
Writing to a File¶
Anda juga dapat menulis data ke berkas menggunakan Bash. Berikut contoh yang meminta masukan pengguna dan menyimpannya ke berkas:
#!/bin/bash
echo "Enter some text:"
read input
echo $input > output.txt
echo "Text saved to output.txt"
Command Substitution¶
Bash memungkinkan Anda menjalankan perintah dan menggunakan output-nya sebagai bagian dari perintah lain. Berikut contoh penghitungan jumlah berkas dalam sebuah direktori:
#!/bin/bash
count=$(ls | wc -l)
echo "Number of files: $count"
Redirecting Output¶
Anda dapat mengalihkan keluaran suatu perintah ke berkas atau perintah lain. Berikut contoh pengalihan keluaran suatu perintah ke berkas:
#!/bin/bash
ls > files.txt
echo "Output redirected to files.txt"
Pipes¶
Pipes Pipa memungkinkan Anda menghubungkan beberapa perintah, dengan keluaran dari satu perintah menjadi masukan untuk perintah berikutnya. Berikut contoh yang mencantumkan berkas dalam direktori dan mengurutkannya berdasarkan abjad:
#!/bin/bash
ls | sort
Arrays¶
Bash mendukung array, yang memungkinkan Anda menyimpan beberapa nilai dalam satu variabel. Berikut contoh deklarasi array dan pencetakan elemen-elemennya:
#!/bin/bash
fruits=("Apple" "Banana" "Orange")
echo "Fruits: ${fruits[@]}"
Case Statement¶
Pernyataan kasus berguna untuk melakukan berbagai tindakan berdasarkan beberapa kondisi. Berikut contoh yang memeriksa hari dalam seminggu:
#!/bin/bash
# Set the day of the week
day=$(date +%u)
# Use a case statement to perform different actions based on the day of the week
case $day in
# Monday
1) echo "It's Monday!";;
# Tuesday
2) echo "It's Tuesday!";;
# Wednesday
3) echo "It's Wednesday!";;
# Thursday
4) echo "It's Thursday!";;
# Friday
5) echo "It's Friday!";;
# Saturday
6) echo "It's Saturday!";;
# Sunday
7) echo "It's Sunday!";;
esac
Process Management¶
Bash memungkinkan Anda mengelola proses di sistem Anda. Berikut contoh yang mencantumkan semua proses yang sedang berjalan:
#!/bin/bash
ps -ef
File Permissions¶
Bash menyediakan alat untuk mengelola izin berkas. Berikut contoh yang mengubah izin berkas menjadi hanya-baca:
#!/bin/bash
echo "Enter a file name:"
read filename
chmod 400 $filename
String Comparison¶
Bash memungkinkan Anda membandingkan string berdasarkan kesamaan atau urutan alfabet. Berikut contoh yang membandingkan dua string:
#!/bin/bash
string1="Hello"
string2="World"
if [ $string1 == $string2 ]; then
echo "The strings are equal."
else
echo "The strings are not equal."
fi
Math Operations¶
Bash dapat melakukan berbagai operasi matematika. Berikut contoh perhitungan akar kuadrat suatu angka:
#!/bin/bash
echo "Enter a number:"
read num
sqrt=$(awk "BEGIN { print sqrt($num) }")
echo "Square root: $sqrt"
Networking¶
Bash menyediakan alat untuk tugas-tugas jaringan. Berikut contoh yang melakukan ping ke server jarak jauh:
#!/bin/bash
echo "Enter a hostname or IP address:"
read host
ping -c 4 $host
String Length¶
Anda dapat menentukan panjang string menggunakan Bash. Berikut contoh yang mencetak panjang string #!/bin:
#!/bin/bash
echo "Enter a string:"
read input
length=${#input}
echo "Length: $length"
Random Numbers¶
Bash dapat menghasilkan angka acak. Berikut contoh yang menghasilkan angka acak antara 1 dan 100:
#!/bin/bash
random=$(shuf -i 1-100 -n 1)
echo "Random number: $random"
Cron Jobs¶
Pekerjaan Cron memungkinkan Anda menjadwalkan tugas untuk dijalankan pada waktu tertentu. Berikut contoh yang menjalankan skrip setiap hari pukul 8.00 pagi:
#!/bin/bash
echo "0 8 * * * bash script.sh" | crontab -
echo "Cron job created."
Error Handling¶
Bash memungkinkan Anda menangani kesalahan dan pengecualian. Berikut contoh yang menangkap kesalahan dan menampilkan pesan khusus:
#!/bin/bash
command_that_may_fail
if [ $? -ne 0 ]; then
echo "An error occurred."
fi
Sending Email¶
Bash dapat mengirim email menggunakan perintah mail. Berikut contoh pengiriman email:
#!/bin/bash
echo "Subject: Test Email" | mail -s "Test Email" user@example.com
echo "Email sent."
Regular Expressions¶
Bash mendukung ekspresi reguler untuk pencocokan pola. Berikut contoh yang memeriksa apakah sebuah string cocok dengan suatu pola:
#!/bin/bash
echo "Enter a string:"
read input
if [[ $input =~ ^[0-9]+$ ]]; then
echo "The string contains only digits."
else
echo "The string does not contain only digits."
fi
Exiting a Script¶
Anda dapat keluar dari skrip Bash kapan saja menggunakan perintah exit. Berikut contoh untuk keluar dari skrip jika suatu kondisi tidak terpenuhi:
#!/bin/bash
# Check if the input parameter is not empty
if [[ -z $1 ]]; then
echo "Error: No input parameter provided"
exit 1
fi
# Do something with the input parameter
echo "Processing input parameter: $1"
Selamat! Anda telah mempelajari 30 contoh praktis skrip Bash. Contoh-contoh ini mencakup beragam topik, mulai dari operasi dasar hingga konsep yang lebih lanjut. Dengan memahami dan menguasai contoh-contoh ini, Anda akan siap mengotomatiskan tugas dan menyederhanakan alur kerja Anda menggunakan skrip Bash.