Mengenal Bash Scripting Pada Sistem Operasi Linux atau Mac Os

Mengenal Bash Scripting Pada Sistem Operasi Linux atau Mac Os

Apa itu bash?

Bash adalah bahasa scripting yang berjalan di dalam terminal pada sebagian besar distro Linux, dan juga MacOS. Script shell adalah urutan perintah bash dalam sebuah file, digabungkan bersama untuk mencapai tugas yang lebih kompleks dari pada satu baris sederhana dan sangat berguna dalam mengotomatiskan tugas sysadmin seperti pencadangan.

Struktur Bash Scripting

Oke, sekarang kita sudah mendapatkan pengenalan singkat tentang apa itu bash dan untuk apa bash digunakan, mari kita langsung masuk ke beberapa contoh!

Pertama-tama mari kita jelaskan strukturnya.

Skrip bash selalu dimulai dengan baris kode berikut di bagian atas skrip.

#!/bin/bash

struktur bash scripting

Ini agar shell Anda (apa pun jenisnya) tahu bahwa ia perlu menjalankan berkas Anda menggunakan bash di terminal.

Mari kita bahas beberapa contoh dasar.

Menampilkan Text Hello World di Terminal

#!/bin/bash

echo "Hello World!"

bash scripting hello world

Ini akan mengembalikan string "Hello World". Perintah "echo" digunakan untuk menampilkan teks ke terminal. Saya sarankan Anda mencoba hal ini di terminal Anda untuk memahami bash!

Menjalankan Perintah Linux di Bash Scripting

Anda juga dapat menjalankan perintah normal Linux di dalam skrip bash Anda dan akan dieksekusi jika diformat dengan benar. Sebagai contoh, kita dapat menjalankan perintah "ls" di dalam skrip bash kita dan kita akan melihat hasilnya ketika kita menjalankan file tersebut. Jadi, ayo kita buat bash untuk melakukan hal ini!


Bash Multiple Command

Sekarang untuk menjalankan skrip bash kita, pertama-tama kita harus memberikan izin eksekusi

chmod +x nama-file.sh Dan kemudian kita jalankan dengan menggunakan ./

chmod +x Bash\ Multiple\ Command.sh

./Bash\ Multiple\ Command.sh

add permission execute

Silakan jalankan sendiri dan lihat apa yang Anda dapatkan.

Kita dapat melihat bahwa ia telah mengeluarkan hasil dari perintah "whoami" dan "id".

Variables Bash

Sekarang kita beralih ke variabel di bash, ini cukup sederhana dan kita membuatnya seperti itu:

Variable Bash

Di mana kita memberikan nilai angga dan menetapkannya ke variabel name.

Harap diperhatikan bahwa agar variabel dapat berfungsi, Anda tidak boleh meninggalkan spasi di antara name variabel, tanda "=", dan nilai. Keduanya tidak boleh memiliki spasi.

Jadi bagaimana kita sekarang menggunakan variabel kita? Caranya juga sangat sederhana.

Kita harus menambahkan tanda $ di depan nama variabel kita untuk menggunakannya.

Memanggil Nama Variable

Jika kita mengujinya di terminal kita sendiri, kita akan mendapatkan sesuatu seperti ini:

name = "angga"
echo $ nama

angga

Ini akan menampilkan "angga" ke layar terminal.

Variabel mempermudah penyimpanan data dan daripada mengetikkan hal yang sama di beberapa tempat, kita cukup memasukkan variabel kita dengan $var dan kemudian mendeklarasikannya dengan nilai tertentu sehingga lebih mudah untuk kembali ke sana jika Anda melakukan kesalahan dan perlu mengubahnya. Jadi, bagaimana cara men-debug kode kita?

Debug Code Bash

Debugging adalah bagian yang sangat penting dalam pemrograman, jadi kita harus membiasakan diri untuk memecahkan masalah dan memperbaiki kesalahan sedini mungkin. Dan bash memiliki beberapa fitur bawaan yang membuat pekerjaan kita menjadi sederhana.

Saat menjalankan pada baris perintah Anda dapat melakukan:

bash -x ./nama-file.sh

Anda dapat membuat skrip bash sederhana (sekarang Anda tahu beberapa sintaks dasar) dan membuat sesuatu yang benar-benar salah. Kemudian jalankan program Anda dengan mode debug dan lihat seperti apa tampilannya saat terjadi kesalahan!

Ini akan memberi tahu Anda baris mana yang berfungsi dan mana yang tidak. Jika Anda ingin melakukan debug pada titik tertentu, Anda dapat memasukkan set -x ke dalam skrip Anda dan set +x untuk mengakhiri bagian tersebut seperti berikut ini:

format debug code bash

Jadi mari kita lihat sebuah contoh. Ini adalah script kita dari sebelumnya yang dijalankan dengan bash -x ./Bash/ Multiple/ Command.sh

debug code bash

Anda dapat melihat outputnya berupa tanda + untuk perintah dan kemudian output dari apa yang dilakukan oleh perintah tersebut. Jika ada kesalahan, ia akan mengeluarkan tanda - pada baris tersebut, sehingga mudah untuk mengetahui di mana letak kesalahan Anda sehingga Anda dapat memperbaikinya.

Kita juga dapat menggunakan beberapa variabel dalam sesuatu seperti pernyataan echo. Anda tidak hanya terbatas menggunakan 1!

Multiple Variable Bash

Parameters

Sekarang kita akan melihat salah satu fitur utama dari bash, yaitu menggunakan parameter.

Pertama-tama kita akan melihat parameter yang ditentukan menggunakan baris perintah saat menjalankan berkas. Ini datang dalam berbagai bentuk, tetapi sering kali memiliki awalan "$" karena parameter masih berupa variabel.

Satu Argumen

Mari kita mulai dengan mendeklarasikan parameter yang akan menjadi argumen pertama saat menjalankan skrip bash.

Parameter Bash

Sekarang kita jalankan script kita dengan ./Parameter\ Bash.sh ANGGA

Bash Parameter satu

Dan tentu saja kita akan mendapatkan hasil dengan "ANGGA"

Dua Argumen

Jadi bagaimana jika kita menginginkan argumen ke-2? Prosesnya sangat sederhana dan kita cukup menambahkan $2 sebagai pengganti nama=$1

Bash Parameter Dua

Kemudian jalankan dengan ./Parameter\ Bash.sh ANGGA ANGGI

Menurut Anda, apa yang akan dihasilkannya?

Bash Paramter Dua

Dan itu akan mengembalikan "ANGGI".

Namun, bagaimana jika kita tidak ingin memberikannya seperti ini, dan sebagai gantinya, kita bisa mengetikkan nama kita dengan cara yang lebih interaktif, kita bisa melakukannya dengan menggunakan read.

Argument Multiline

Kode ini akan hang setelah dijalankan, ini memberi Anda kesempatan untuk mengetikkan nama Anda.

chmod +x 'Argument Multiline.sh'

./Argument\ Multiline.sh

Membaca Argument dengan Read

Dan kita bisa melihat bahwa itu berhasil!

Mungkin Anda bisa mencoba membuat pembuat biografi kecil, di mana Anda mengambil nama, usia, dan pekerjaan sebagai parameter. Simpan di dalam sebuah variabel dan kemudian keluarkan ke layar dalam sebuah kalimat. 

Namun masih banyak hal yang bisa Anda lakukan dengan parameter dan saya sarankan Anda untuk bermain-main dengan parameter, bagaimanapun juga latihan akan membuat Anda menjadi lebih baik! 

Array

Array digunakan untuk menyimpan beberapa bagian data dalam satu variabel, yang kemudian dapat diekstract dengan menggunakan indeks. Biasanya dinotasikan sebagai var[index_position].

Array menggunakan pengindeksan yang berarti bahwa setiap item dalam array mewakili sebuah angka.

Dalam array ['mobil', 'kereta', 'sepeda', 'bus'], setiap item memiliki indeks yang sesuai.

Semua indeks dimulai dari posisi 0

array bentuk table

Sekarang kita telah membahas hal ini, mari kita membuat sebuah array di bash.

Sintaksnya adalah sebagai berikut.

Kita memiliki nama variabel, dalam kasus kita 'transport', Kemudian kita membungkus setiap item dalam tanda kurung dengan menyisakan spasi di antara setiap item.

transport = ('car' 'train' 'bike' 'bus')

mengambil semua data di array

Kita kemudian dapat meng-echo semua elemen dalam array kita seperti ini:

echo "${transport[@]}"

menjalankan bash script cetak semua data

Anda dapat mencoba ini di terminal Anda sendiri dan melihat apa yang dihasilkannya.

Di mana "@" berarti semua argumen, dan tanda [] yang melingkupinya menentukan indeksnya.

Jadi bagaimana jika kita ingin mencetak train.

Kita cukup mengetikkan:

echo "${transport[1]}"

memanggil data array spesifik

karena train berada pada posisi indeks 1.

Execute Panggil Data Spesifik

Hal terakhir yang akan kita bahas adalah jika kita ingin mengubah sebuah elemen, atau menghapusnya. Jika kita ingin menghapus sebuah elemen, kita akan menggunakan utilitas unset.

unset transport[1]

unset array bash

Ini sekarang menghapus item kereta api, jika kita ingin, kita dapat menggabungkannya kembali dan melihat bahwa item tersebut benar-benar hilang.

hasil unset array

Sekarang mari kita atur ke sesuatu yang lain. Kita bisa melakukannya:

transport[1] = 'trainride'

mengganti value array index 1

Jika kita meng-echo array tersebut maka kita akan mendapatkan:

mobil trainride bike bus

hasil mengganti value array

Jadi, kita berhasil menukar sebuah elemen dalam array kita!

Sebagai proyek sampingan, cobalah untuk mengembangkan proyek Anda sebelumnya sebagai pembuat biografi, sertakan array sehingga Anda dapat menyimpan beberapa nama dan beberapa fakta tentang orang tersebut. Kemudian di modul berikutnya kita dapat mengembangkannya lebih jauh lagi.

Dengan menggunakan array tersebut.

Conditionals

Ketika kita berbicara tentang conditionals, itu berarti bahwa suatu bagian dari kode bergantung pada kondisi yang terpenuhi, ini sering ditentukan dengan operator relasional, seperti sama dengan =, lebih besar dari >, dan kurang dari <.

Kita akan membuat pernyataan "if" sederhana untuk memeriksa apakah sebuah variabel sama dengan sebuah nilai, kita juga akan membuat script yang memeriksa apakah sebuah file ada dan dapat ditulis, jika ya kita akan menulis pesan ke file tersebut, jika tidak dapat ditulis maka kita akan menghapusnya dan membuat file yang baru. Banyak hal baru yang akan diajarkan di sini, jadi perhatikan baik-baik.

Pertama, kita akan membahas sintaks dasar dari pernyataan if.

Semua pernyataan if terlihat seperti itu:

syntax if bash

Mari kita lihat sebuah contoh:

contoh if statement bash

Pernyataan if selalu menggunakan sepasang tanda kurung dan dalam kasus [] kita harus menyisakan spasi di kedua sisi teks (sintaks bash). Kita juga harus selalu mengakhiri pernyataan if dengan fi

if bash perbandingan

Di sini sebuah variabel dideklarasikan sebagai 10 dan pada baris teratas dari pernyataan if variabel $count dibandingkan dengan bilangan bulat 10.

Jika keduanya sama maka hasilnya benar, jika salah maka hasilnya salah. Seperti yang kita ketahui, 10 sama dengan 10, jadi hasilnya adalah benar.

Tanda -eq adalah salah satu cara untuk melakukan hal ini, Anda juga dapat menggunakan "="

Keterangan
  • -eq Mengecek apakah nilai dua operand sama atau tidak; jika ya, maka kondisi menjadi benar.
  • -ne Mengecek apakah nilai dua operand sama atau tidak; jika nilai tidak sama, maka kondisi menjadi benar.
  • -gt Mengecek apakah nilai operan kiri lebih besar dari nilai operan kanan; jika ya, maka kondisi menjadi benar.
  • -lt Mengecek apakah nilai operan kiri lebih kecil dari nilai operan kanan; jika ya, maka kondisi menjadi benar.
  • -ge Mengecek apakah nilai operan kiri lebih besar atau sama dengan nilai operan kanan; jika ya, maka kondisi menjadi benar.
Ini adalah beberapa contoh.

Jadi sekarang mari kita gunakan ini untuk membuat script kecil yang membandingkan sebuah input (parameter) dan memeriksanya dengan sebuah nilai untuk mengecek apakah input tersebut benar atau tidak. Sebuah permainan menebak-nebak jika Anda mau.

Sebuah permainan menebak-nebak

Sekarang mari kita uji ini di terminal kita.

eksekusi permainan menebak-nebak

./conditionals.sh guessme
"They are equal"

./conditionals.sh hi
"They are not equal"

Dan kita bisa melihat bahwa ini berhasil!

Jangan ragu untuk bermain-main dengan ini dan mencoba membuat kombinasi yang berbeda dan menggunakan operator yang berbeda.

Sekarang mari kita buat script lain di mana kita akan menggunakan 2 kondisi secara bersamaan dan kembali ke konsep yang telah kita pelajari di pelajaran pertama.


Mari kita mulai.

Kita ingin membuat sebuah script yang akan kita jalankan pada sebuah file yang diberikan oleh sebuah parameter.

Kita kemudian memeriksa apakah file tersebut ada dan apakah ia memiliki hak akses tulis. Jika memiliki izin tulis maka kita akan mengucapkan "hello" kepadanya. Jika tidak dapat diakses atau tidak ada, kita akan membuat berkas dan mengucapkan "hello" kepadanya. Mari kita mulai!

tulis dan baca file

If Kondisi Pertama

if kondisi pertama

touch hello.txt
./conditionals.sh hello.txt
cat hello.txt
"Hello"

If Kondisi Kedua

if kondisi kedua

./conditionals.sh hello.txt
cat hello.txt
"hello"


Dan kita dapat melihat bahwa itu berhasil!!

Perintah -f mengecek apakah berkas tersebut ada.

-w memeriksa apakah file tersebut dapat ditulis, tanpa izin tulis kita tidak akan dapat menampilkan teks kita ke dalam file.

Untuk menyelesaikan proyek kecil kita dari tugas sebelumnya. Anda dapat mengembangkan script Anda dengan menggunakan pernyataan if/else. Tes untuk melihat apakah usia mereka di bawah 18 tahun, jika ya maka echo nama mereka dengan "Anda tidak memenuhi syarat untuk bekerja" atau sesuatu yang serupa dengan itu, jika mereka lebih dari 18 tahun maka tanyakan pekerjaan mereka, Anda dapat melakukan ini dengan read

Jangan ragu untuk menambahkan apa pun yang kamu suka dan membuatnya serumit yang kamu inginkan dan semoga berhasil dengan proyek kamu!

Previous Post
No Comment
Add Comment
comment url