Variabel dasar di Bash

Pengantar Bash Scripting

Alex Scriven

Data Scientist

Menetapkan variabel

Seperti bahasa lain, Anda dapat menetapkan variabel dengan tanda sama dengan.

var1="Moon"

Lalu referensikan dengan notasi $.

echo $var1
Moon
Pengantar Bash Scripting

Menetapkan variabel string

Beri nama variabel sesuka Anda (yang masuk akal):

firstname='Cynthia'
lastname='Liu'

echo "Hi there" $firstname $lastname
Hi there Cynthia Liu

Kedua variabel ditampilkan—bagus!

Pengantar Bash Scripting

Lupa notasi $

Jika Anda lupa notasi $ — itu bukan variabel!

firstname='Cynthia'
lastname='Liu'
echo "Hi there " firstname lastname
Hi there firstname lastname
Pengantar Bash Scripting

(Tidak) menetapkan variabel

Bash tidak toleran terhadap spasi saat membuat variabel. Hindari menambahkan spasi!

var1 = "Moon"
echo $var1
script.sh: line 3: var1: command not found
Pengantar Bash Scripting

Kutip tunggal, ganda, backticks

Di Bash, tanda kutip berbeda memberi makna berbeda. Baik saat membuat variabel maupun mencetak.

  • Tanda kutip tunggal ('sometext') = Shell menafsirkan isinya secara literal
  • Tanda kutip ganda ("sometext") = Shell literal kecuali untuk $ dan backticks

Cara terakhir membuat 'shell-di-dalam-shell', dijelaskan di bawah. Berguna untuk memanggil program command-line. Ini dilakukan dengan backticks.

  • Backticks (`sometext`) = Shell menjalankan perintah dan menangkap STDOUT kembali ke variabel
Pengantar Bash Scripting

Beragam cara membuat variabel

Mari lihat efek berbagai cara membuat variabel

now_var='NOW'

now_var_singlequote='$now_var' echo $now_var_singlequote
$now_var
now_var_doublequote="$now_var"
echo $now_var_doublequote
NOW
Pengantar Bash Scripting

Program date

Program date akan berguna untuk mendemonstrasikan backticks

Keluaran normal program ini:

date
Mon  2 Dec 2019 14:07:10 AEDT
Pengantar Bash Scripting

Shell di dalam shell

Sekarang gunakan shell-di-dalam-shell:

rightnow_doublequote="The date is `date`."
echo $rightnow_doublequote
The date is Mon 2 Dec 2019 14:13:35 AEDT.

Program date dipanggil, keluarannya ditangkap dan digabungkan langsung dalam panggilan echo.

Kita memakai shell di dalam shell!

Pengantar Bash Scripting

Kurung vs backticks

Ada padanan untuk notasi backtick:

rightnow_doublequote="The date is `date`."
rightnow_parentheses="The date is $(date)."
echo $rightnow_doublequote
echo $rightnow_parentheses
The date is Mon 2 Dec 2019 14:54:34 AEDT.
The date is Mon 2 Dec 2019 14:54:34 AEDT.

Keduanya sama, namun backticks lebih lama. Kurung lebih sering dipakai di aplikasi modern. (Lihat http://mywiki.wooledge.org/BashFAQ/082)

Pengantar Bash Scripting

Ayo berlatih!

Pengantar Bash Scripting

Preparing Video For Download...