GNU/Linux >> Belajar Linux >  >> Linux

Tutorial Variabel Bash – 6 Contoh Variabel Bash Global dan Lokal Praktis

Artikel ini adalah bagian dari seri tutorial bash kami yang sedang berlangsung. Seperti bahasa pemrograman lainnya, Bash juga menyediakan variabel.

Variabel bash menyediakan penyimpanan sementara untuk informasi yang akan dibutuhkan selama masa hidup program.

Sintaks:

VARNAME=VALUE

Catatan: Seharusnya tidak ada spasi di sekitar tanda “=” dalam penetapan variabel. Saat Anda menggunakan VAR=VALUE, shell melihat “=" sebagai simbol dan memperlakukan perintah sebagai penetapan variabel. Saat Anda menggunakan VAR =VALUE, shell mengasumsikan bahwa VAR harus menjadi nama perintah dan mencoba menjalankannya.

Shell tidak peduli dengan jenis variabel. Variabel dapat menyimpan string, integer, atau bilangan real.

Contoh.1 Penggunaan Penetapan Variabel Bash Sederhana

Skrip berikut membuat variabel bernama LIST dan memberikan nilai “/var/opt/bin”. Untuk mengakses variabel, cukup awali nama variabel dengan $, yang akan memberi Anda nilai yang tersimpan dalam variabel tersebut.

$ cat sample.sh
#!/bin/bash
LIST="/var/opt/bin/"
ls -l $LIST

Jalankan skrip di atas, yang akan menampilkan /var/opt/bin dalam format panjang seperti yang ditunjukkan di bawah ini.

$ ./sample.sh
total 8
drwxrwsr-x 2 bin  bin 4096 Jan 29 06:43 softwares
drwxr-sr-x 5 root bin 4096 Sep  2  2009 llist

Cakupan Variabel Bash – Lokal dan Global

Di Bash, variabel tidak harus dideklarasikan. Namun, ketika Anda mengakses variabel yang tidak digunakan selama ini, Anda tidak akan mendapatkan peringatan atau pesan kesalahan. Sebaliknya, itu akan menampilkan nilai kosong.

Contoh 2. Nilai kosong dalam variabel bash

$ cat var1.sh
#!/bin/sh
echo "Variable value is: $VAR1"
VAR1="GEEKSTUFF"
echo "Variable value is: $VAR1"

$ ./var1.sh
Variable value is:
Variable value is: GEEKSTUFF

Seperti yang ditunjukkan di atas, awalnya variabel akan memiliki nilai kosong, setelah ditetapkan, Anda bisa mendapatkan nilai Anda. perintah ekspor digunakan untuk mengekspor variabel dari shell interaktif. export menunjukkan efek pada cakupan variabel.

Contoh 3. Variabel Bash tanpa ekspor

Tetapkan variabel dengan nilai di shell interaktif, dan coba akses yang sama di skrip shell Anda.

$ VAR2=LINUX

$ cat var2.sh
#!/bin/bash
echo "VAR2=$VAR2"
VAR2=UNIX
echo "VAR2=$VAR2"

Sekarang, jalankan skrip di atas seperti yang ditunjukkan di bawah ini.

$ ./var2.sh
VAR2=
VAR2=UNIX

Tetap saja Anda akan mendapatkan nilai kosong untuk variabel VAR2. Shell menyimpan variabel VAR2 dengan LINUX hanya di shell saat ini. Selama eksekusi var2.sh, itu memunculkan shell dan menjalankan skrip. Jadi variabel VAR2 tidak akan memiliki nilai di shell spawned. Anda perlu mengekspor variabel agar dapat diwarisi oleh program lain – termasuk skrip shell, seperti yang ditunjukkan di bawah ini.

Contoh 4. Mengekspor Variabel Bash

$ export VAR2=LINUX

$ cat var2.sh
#!/bin/bash
echo "VAR2=$VAR2"
VAR2=UNIX
echo "VAR2=$VAR2"

Sekarang jalankan skrip di atas.

$ ./var2.sh
VAR2=LINUX
VAR2=UNIX
$
$echo $VAR2
LINUX

Sekarang, Anda dapat melihat bahwa setelah eksekusi skrip shell var2.sh, nilai VAR2 adalah LINUX. Karena variabel tidak akan diteruskan kembali ke shell interaktif Anda, kecuali jika Anda menjalankan skrip di shell saat ini.

Mendeklarasikan Variabel Bash

Menggunakan pernyataan mendeklarasikan di bash, kita dapat membatasi nilai yang diberikan ke variabel. Ini membatasi properti variabel. Opsi dalam pernyataan deklarasi digunakan untuk menentukan jenis variabel.

Sintaks:

declare option variablename
  • deklarasikan adalah kata kunci
  • Opsi
  • bisa berupa:
    • -r variabel baca saja
    • -i variabel bilangan bulat
    • -sebuah variabel array
    • -f untuk fungsi
    • -x mendeklarasikan dan mengekspor ke perintah berikutnya melalui lingkungan.

Contoh 5. Deklarasi variabel Bash menggunakan deklarasi

$ cat declar.sh
#!/bin/bash
declare -i intvar
intvar=123 # Assigning integer value.
echo $intvar
intvar=12.3 #Trying to store string type value to an integer variable
echo $intvar

declare -r rovar=281
rovar=212 # Trying to change the readonly variable.

Dari eksekusi di bawah ini, Anda dapat melihat pesan kesalahan saat Anda menetapkan data yang tidak valid ke variabel.

$ ./declar.sh
123
t.sh: line 6: 12.3: syntax error: invalid arithmetic operator (error token is ".3")
123
t.sh: line 11: rovar: readonly variable

Variabel Bash Global

Variabel global juga disebut sebagai variabel lingkungan, yang akan tersedia untuk semua shell. perintah printenv digunakan untuk menampilkan semua variabel lingkungan.

$ printenv
SHELL=/bin/bash
HISTSIZE=1000
SSH_TTY=/dev/pts/1
HOME=/root
LOGNAME=root
CVS_RSH=ssh

Variabel Bash Lokal

Variabel lokal hanya terlihat di dalam blok kode. local adalah kata kunci yang digunakan untuk mendeklarasikan variabel lokal. Dalam suatu fungsi, variabel lokal hanya memiliki makna di dalam blok fungsi tersebut.

Contoh 6. Variabel Bash Global dan Lokal

$ cat localvar.sh
#!/bin/bash
pprint()
{
  local lvar="Local content"
  echo -e "Local variable value with in the function"
  echo $lvar
  gvar="Global content changed"
  echo -e "Global variable value with in the function"
  echo $gvar
}

gvar="Global content"
echo -e "Global variable value before calling function"
echo $gvar
echo -e "Local variable value before calling function"
echo $lvar
pprint
echo -e "Global variable value after calling function"
echo $gvar
echo -e "Local variable value after calling function"
echo $lvar

Jalankan script di atas,

$ sh t.sh
Global variable value before calling function
Global content
Local variable value before calling function

Local variable value with in the function
Local content
Global variable value with in the function
Global content changed
Global variable value after calling function
Global content changed
Local variable value after calling function

Pada output di atas, variabel lokal hanya akan memiliki nilai kosong sebelum dan sesudah memanggil fungsi. Ruang lingkupnya hanya dengan di dalam fungsi. Itu menghilang dari fungsi, sedangkan variabel global memiliki nilai yang diperbarui bahkan setelah fungsi dieksekusi.


Linux
  1. Tutorial Bash Array Terbaik dengan 15 Contoh

  2. Referensi Array Perl dan Tutorial Dereference Dengan Contoh Praktis

  3. Ekspor variabel dari bash dan gunakan dengan Python

  1. Panduan Bash For Loop dan Contohnya

  2. Tutorial Perintah Linux nice and renice (7 Contoh)

  3. Tutorial Pemrograman C 4 - Variabel dan Memori

  1. Contoh Bash For Loop dan While Loop

  2. Tutorial Awk:Memahami Variabel Awk dengan 3 Contoh Praktis

  3. Tutorial Status Keluar Bash Shell dengan Contoh Praktis