Unix / Linux - Menggunakan Variabel Shell
Di bab ini, kita akan mempelajari cara menggunakan variabel Shell di Unix. Variabel adalah string karakter yang kita beri nilai. Nilai yang diberikan bisa berupa angka, teks, nama file, perangkat, atau jenis data lainnya.
Variabel tidak lebih dari penunjuk ke data aktual. Shell memungkinkan Anda untuk membuat, menetapkan, dan menghapus variabel.
Nama Variabel
Nama variabel hanya boleh berisi huruf (a hingga z atau A hingga Z), angka (0 hingga 9), atau karakter garis bawah (_).
Sesuai konvensi, variabel shell Unix akan memiliki namanya dalam UPPERCASE.
Contoh berikut adalah nama variabel yang valid -
_ALI
TOKEN_A
VAR_1
VAR_2
Berikut adalah contoh nama variabel yang tidak valid -
2_VAR
-VARIABLE
VAR1-VAR2
VAR_A!
Alasan Anda tidak dapat menggunakan karakter lain seperti !, *, atau - adalah bahwa karakter tersebut memiliki arti khusus untuk shell.
Mendefinisikan Variabel
Variabel didefinisikan sebagai berikut -
variable_name=variable_value
Misalnya -
NAME="Zara Ali"
Contoh di atas mendefinisikan variabel NAME dan memberikan nilai "Zara Ali" padanya. Variabel jenis ini disebutscalar variables. Variabel skalar hanya dapat menampung satu nilai dalam satu waktu.
Shell memungkinkan Anda menyimpan nilai apa pun yang Anda inginkan dalam variabel. Misalnya -
VAR1="Zara Ali"
VAR2=100
Mengakses Nilai
Untuk mengakses nilai yang disimpan dalam variabel, awali namanya dengan tanda dolar ($) -
Misalnya, skrip berikut akan mengakses nilai variabel yang ditentukan NAME dan mencetaknya di STDOUT -
#!/bin/sh
NAME="Zara Ali"
echo $NAME
Skrip di atas akan menghasilkan nilai berikut -
Zara Ali
Variabel Hanya-Baca
Shell menyediakan cara untuk menandai variabel sebagai read-only dengan menggunakan perintah read-only. Setelah variabel ditandai hanya-baca, nilainya tidak dapat diubah.
Misalnya, skrip berikut menghasilkan kesalahan saat mencoba mengubah nilai NAME -
#!/bin/sh
NAME="Zara Ali"
readonly NAME
NAME="Qadiri"
Skrip di atas akan menghasilkan hasil sebagai berikut -
/bin/sh: NAME: This variable is read only.
Variabel Tidak Disetel
Membatalkan atau menghapus variabel mengarahkan shell untuk menghapus variabel dari daftar variabel yang dilacaknya. Setelah Anda menghapus variabel, Anda tidak dapat mengakses nilai yang disimpan dalam variabel.
Berikut ini adalah sintaks untuk menghapus variabel yang ditentukan menggunakan unset perintah -
unset variable_name
Perintah di atas membatalkan nilai variabel yang ditentukan. Berikut adalah contoh sederhana yang menunjukkan cara kerja perintah -
#!/bin/sh
NAME="Zara Ali"
unset NAME
echo $NAME
Contoh di atas tidak mencetak apa pun. Anda tidak dapat menggunakan perintah unset tounset variabel yang ditandai readonly.
Jenis Variabel
Saat shell berjalan, ada tiga jenis variabel utama -
Local Variables- Variabel lokal adalah variabel yang ada dalam instance shell saat ini. Ini tidak tersedia untuk program yang dimulai oleh shell. Mereka diatur pada prompt perintah.
Environment Variables- Variabel lingkungan tersedia untuk semua proses turunan dari shell. Beberapa program membutuhkan variabel lingkungan agar berfungsi dengan benar. Biasanya, skrip shell hanya mendefinisikan variabel lingkungan yang diperlukan oleh program yang dijalankan.
Shell Variables- Variabel shell adalah variabel khusus yang ditetapkan oleh shell dan dibutuhkan oleh shell agar dapat berfungsi dengan benar. Beberapa variabel ini adalah variabel lingkungan sedangkan yang lainnya adalah variabel lokal.