Leon Sastra
Leon Sastra Seorang pemuda yang sangat tertarik untuk mempelajari dunia IT terutama bidang Cloud Computing Sys/Dev/Ops. Bio lengkap saya dapat dilihat pada https://leonsastra.my.id/

Cara Menggunakan Bash Script di Linux


Cara Menggunakan Bash Script di Linux

Sebelum memulai tentang script, pertama pertama saya ingin menjelaskan informasinya dulu, jadi BASH merupakan akronim dari Bourne Again Shell, dan merupakan salah satu nama unix shell.

Bash digunakan secara default pada mayoritas distro linux, varian lainnya antara lain Z Shell dan Almquist shell

Alasan menggunakan bash scripting.

  • Mengeliminasi task yang berulang-ulang.
  • Menghemat waktu.
  • Menyederhanakan command
  • Membuat flow (aliran) logika.
  • Digunakan di awal server (server start-up) atau dengan menambahkan cron job terjadwal.

Ciri ciri

Selalu diawali dengan:

1
#!/bin/bash

Note: Perhatikan karakter [ #! ] Apakah gerangan maksudnya ?? :D

Jadi untuk karakter awal [ #! ] cara bacanya adalah shebank, karakter ini menjelaskan bahwa file yang dibuat dianggap sebagai program yang dijalankan oleh misalnya bash :[#!/bin/bash] atau python misalnya: [#!/usr/bin/python]

Variable

Pada penggunaan bash scripting, kalian juga bisa menggunakan variable seperti pada bahasa pemrograman lainnya, berikut contohnya:

- Variable

1
2
3
4
NAME="Tampan"
echo $NAME
or
echo "$NAME"

- String Quotes

1
2
3
NAME="John"
echo "Hi $NAME"  #=> Hi John
echo 'Hi $NAME'  #=> Hi $NAME

- Interactive shell (basic)

Kalian juga bisa menciptakan prompt untuk mengisikan sebuah variable, berikut contohnya:

1
2
3
#!/bin/bash
read -p "Nama kamu siapa ganteng ? : " nama
echo "Nama saya $nama, cantik~"

Mudah bukan ??

Perulangan (Looping)

Seperti bahasa pemrograman, pada bash juga bisa dilakukan perulangan dan biasanya ini digunakan oleh para sysadmin atau developer untuk mempermudah pekerjaan disisi server berikut contohnya:

- Looping (Basic)

1
2
3
4
5
echo {1..4}
or
echo {1,5,10}
or
echo {10..50..10}

OR

1
2
3
4
#!/bin/bash
for i in /etc/rc.*; do
  echo $i
done

- Looping (C-Style)

1
2
3
4
#!/bin/bash
for ((i = 0 ; i < 100 ; i++)); do
  echo $i
done

Penerapan:

Semisal kalian akan mengeksekusi perintah update repository atau package pada 4 server, kaliang bisa memanfaatkan fitur looping seperti berikut:

1
for i in {1..4}; do ssh user@192.168.1.$i apt/yum update; done

Mudah bukan ?

Penggunaan Array

Array digunakan jika pada 1 variable berisi beberapa value, semisal variable buah memiliki value seperti: pisang, jeruk, apel. Untuk jelasnya berikut contoh penggunaannya:

1
2
3
4
5
6
7
Fruits=('Apple' 'Banana' 'Orange')

or

Fruits[0]="Apple"
Fruits[1]="Banana"
Fruits[2]="Orange"

- Pemanggilan Array

Untuk memanggil array yang telah dibuat, Kalian bisa memanfaatkan tools echo seperti berikut:

1
2
3
echo ${Fruits[0]}           # Element #0
echo ${Fruits[-1]}          # Last element
echo ${Fruits[@]}           # All elements, space-separated

Bagaiamana, mudah bukan ?

Statement

Penggunaan statement pada bash memungkinkan Anda untuk membuat sebuah keputusan dalam Bash Scripting. Ini memungkinkan kita untuk memutuskan apakah akan menjalankan sebuah kode berdasarkan atau tidak berdasarkan kondisi yang mungkin kita tetapkan. Sebuah statement dapat juga dikombinasikan dengan looping atau perulangan yang memungkinkan kita untuk membuat skrip yang jauh lebih kompleks dan dapat menyelesaikan tugas yang lebih besar, berikut contohnya

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
case $provinsi in

  1)
  echo ${jabar[@]}
  ;;

  2)
  echo ${jatim[@]}
  ;;

  3)
  echo ${jateng[@]}
  ;;

esac

Ayo belajar langsung

Latihan1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/bin/bash

# Masuk ke directory testing
cd $PWD/testing

# Listing isi folder
c=1
for file in $( ls -1); do
    var[$c]="$file";
    c=$(($c+1));
done

# define variable
read -p "Karakter yang dicari : " old
read -p "Karakter yang mau diganti : " new

# list file
echo ""
echo "Berikut list file yang ada pada folder sampel:"
echo ""
for loop in "${var[@]}"; do
        echo $loop;
done
echo ""
read -p "Masukan nomor file : " numfile

# Fungsi
sed -i "s|$old|$new|g" $PWD/${var["$numfile"]}

# Verifikasi
cat $PWD/${var["$numfile"]}

Lalu coba eksekusi filenya dan lihat hasilnya ^^

Latihan2

  • Buat sebuah file dan isikan dengan script berikut:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/bin/bash

jabar=('bogor' 'bekasi' 'depok')
jatim=('jombang' 'malang' 'pasuruan')
jateng=('purwakerto' 'semarang' 'wonogiri')

echo "List provinsi !"

echo "1. jabar"
echo "2. jatim"
echo "3. jateng"

read -p "Masukan provinsi : " provinsi;

case $provinsi in

  1)
  echo ${jabar[@]}
  ;;

  2)
  echo ${jatim[@]}
  ;;

  3)
  echo ${jateng[@]}
  ;;

esac

Lalu coba eksekusi filenya dan lihat hasilnya ^^

comments powered by Disqus