GNU/Linux >> Belajar Linux >  >> Linux

Cara Menggunakan Variabel di Shell Scripting

Dalam setiap pemrograman bahasa variabel memainkan peran penting, dalam skrip shell Linux kami menggunakan dua jenis variabel:Variabel yang Ditentukan Sistem &Variabel Buatan Pengguna .

Variabel dalam skrip shell adalah sarana referensi sebuah numerik atau nilai karakter . Dan tidak seperti bahasa pemrograman formal, skrip shell tidak mengharuskan Anda untuk mendeklarasikan jenis untuk variabel Anda

Pada artikel ini kita akan membahas variabel, jenisnya dan cara mengatur &menggunakan variabel dalam skrip shell.

Variabel yang Ditentukan Sistem :

Ini adalah variabel yang dibuat dan dipelihara oleh Sistem Operasi (Linux) itu sendiri. Umumnya variabel ini didefinisikan dalam HURUF BESAR . Kita dapat melihat variabel tersebut dengan menggunakan perintah “$ set “. Beberapa variabel yang didefinisikan sistem diberikan di bawah ini :

Untuk Mencetak nilai variabel di atas, gunakan perintah echo seperti gambar dibawah ini :

# echo $HOME
# echo $USERNAME

Kami dapat memanfaatkan variabel lingkungan ini dari dalam skrip Anda dengan menggunakan nama variabel lingkungan yang diawali dengan tanda dolar. Ini ditunjukkan dalam skrip berikut:

$cat myscript

#!/bin/bash
# menampilkan informasi pengguna dari sistem.
echo “User info for userid:$USER”
echo UID:$UID
echo HOME:$HOME

Perhatikan bahwa variabel lingkungan dalam perintah gema diganti dengan nilainya saat ini saat skrip dijalankan. Perhatikan juga bahwa kami dapat menempatkan $USER variabel sistem dalam tanda kutip ganda di string pertama, dan skrip shell masih dapat memahami apa yang kami maksud. Ada kekurangan untuk menggunakan metode ini, namun. Lihat apa yang terjadi dalam contoh ini:

$ echo “Harga barangnya $15”
Harga barangnya 5

Jelas bukan itu yang dimaksudkan. Setiap kali skrip melihat tanda dolar dalam tanda kutip, itu mengasumsikan Anda mereferensikan variabel. Dalam contoh ini skrip berusaha menampilkan variabel $1 (yang tidak ditentukan), lalu angka 5. Untuk menampilkan tanda dolar yang sebenarnya, Anda harus mendahului dengan karakter garis miring terbalik:

$ echo “Harga barangnya \$15”
Harga barangnya $15

Itu lebih baik. Garis miring terbalik memungkinkan skrip shell untuk menafsirkan tanda dolar sebagai tanda dolar yang sebenarnya, dan bukan variabel.

Variabel Buatan Pengguna:

Variabel ini ditentukan oleh pengguna . Skrip shell memungkinkan kita untuk mengatur dan menggunakan variabel kita sendiri dalam naskah. Menyetel variabel memungkinkan Anda untuk menyimpan data sementara dan menggunakannya di seluruh skrip, membuat skrip shell lebih seperti program komputer nyata.

Variabel pengguna dapat berupa string teks apa pun hingga 20 huruf , digit , atau karakter garis bawah . Variabel pengguna bersifat case sensitive, sehingga variabel Var1 berbeda dengan variabel var1. Aturan kecil ini sering membuat programmer skrip pemula dalam masalah.

Nilai ditetapkan ke variabel pengguna menggunakan tanda sama dengan. Tidak ada spasi yang dapat muncul di antara variabel, tanda sama dengan, dan nilai (titik masalah lain untuk pemula). Berikut adalah beberapa contoh pemberian nilai ke variabel pengguna:

var1=10
var2=-57
var3=testing
var4=“masih lagi pengujian”

Skrip shell secara otomatis menentukan tipe data digunakan untuk nilai variabel. Variabel yang didefinisikan dalam skrip shell mempertahankan nilainya sepanjang umur skrip shell tetapi dihapus ketika skrip shell selesai.

Sama seperti variabel sistem, variabel pengguna dapat direferensikan menggunakan tanda dolar:

$ cat test3
#!/bin/bash
# variabel pengujian
hari=10
guest=”Katie”
echo “$guest check in $days days ago”
days=5
guest=”Jessica”
echo “$guest check in $days days ago”
$

Menjalankan skrip menghasilkan output berikut:
$ chmod u+x test3
$ ./test3
Katie check in 10 hari yang lalu
Jessica check in 5 hari yang lalu
$

Setiap kali variabel dirujuk , itu menghasilkan nilai yang saat ini ditetapkan padanya. Penting untuk diingat bahwa saat mereferensikan nilai variabel, Anda menggunakan tanda dolar , tetapi saat mereferensikan variabel untuk menetapkan nilai padanya, Anda tidak menggunakan tanda dolar. Ini contoh yang saya maksud:

$ cat test4
#!/bin/bash
# menetapkan nilai variabel ke variabel lain
nilai1=10
nilai2 =$value1
echo Nilai yang dihasilkan adalah $value2
$

Bila Anda menggunakan nilai dari nilai1 variabel dalam pernyataan penugasan, Anda masih harus menggunakan tanda dolar. Kode ini menghasilkan output berikut:

$ chmod u+x test4
$ ./test4
Nilai yang dihasilkan adalah 10
$

Jika Anda lupa tanda dolar, dan buat garis penetapan nilai2 terlihat seperti:

value2=value1
Anda mendapatkan output berikut:
$ ./test4
Nilai yang dihasilkan adalah value1
$

Tanpa tanda dolar, shell menafsirkan nama variabel sebagai string teks normal , yang kemungkinan besar bukan yang Anda inginkan.

Penggunaan simbol Backtick (`) pada variabel shell :

Tanda mundur memungkinkan Anda untuk menetapkan output dari perintah shell ke variabel. Meskipun ini tampaknya tidak banyak, ini adalah blok bangunan utama dalam skrip  pemrograman. Anda harus mengelilingi seluruh perintah baris perintah dengan karakter backtick:

testing=`date`

Shell menjalankan perintah di dalam backticks dan menetapkan output ke pengujian variabel. Berikut adalah contoh membuat variabel menggunakan output dari perintah shell normal:

$ cat test5
#!/bin/bash
# menggunakan karakter backtick
testing=`date`
echo “ Tanggal dan waktunya adalah:” $testing
$

Pengujian variabel menerima output dari perintah date, dan digunakan dalam pernyataan echo untuk menampilkannya. Menjalankan skrip shell menghasilkan output berikut:

$ chmod u+x test5
$ ./test5
Tanggal dan waktunya adalah:Sen Jan 31 20:23:25 EDT 2011

Catatan :Di bash Anda juga dapat menggunakan alternatif $(…) sintaks sebagai pengganti backtick (`), yang memiliki keuntungan menjadi re-entrant.

Contoh :$ echo ” Tanggal &waktu hari ini adalah :” $(date)
Tanggal &waktu hari ini adalah :Minggu 27 Jul 16:26:56 IST 2014

Baca Juga 9 Contoh Perintah 'diff' di Linux


Linux
  1. Cara Menggunakan Kata Sandi Terenkripsi di Linux Bash Shell Script

  2. Cara mendefinisikan dan menggunakan fungsi di Linux Shell Script

  3. Bagaimana Membandingkan String di Bash Shell Scripting

  1. Bagaimana Cara Membuat Variabel Lingkungan "diekspor" Dalam Skrip Shell Tetap Di Sekitar?

  2. Bagaimana Menangani Switch Dalam Script Shell?

  3. Bagaimana Membuat File Sementara Di Shell Script?

  1. Haruskah Saya Menggunakan Apt Atau Apt-get Di Shell Scripting?

  2. Cara menjalankan skrip shell saat startup

  3. Bagaimana cara menggunakan variabel atom di C?