Sumber: Bash Reference Manual
Edisi 5.0, untuk Bash versi terkini yakni 5.0 yang telah dikemaskini dalam Mei 2019.
Rujukan Bab 3: Ciri-ciri Asas Shell (Basic Shell Features)
Contoh skrip diberi bagi menunjukkan bahawa shell menggunakan dynamic scoping
untuk mengawal keterlihatan pemboleh ubah dalam satu-satu fungsi:#!/usr/bin/env bash
func1()
{
local var='func1 local'
func2
}
func2()
{
echo "In func2, var = $var"
}
var=global
func1
Nombor baris bermula dari baris yang telah diserlahkan (highligted).Baris | Keterangan |
---|
1 | tentukan fungsi1 ; |
2 | pembuka curly brace(s) (Rujuk 3.2.4.3 Grouping Commands); |
3 | tentukan pemboleh ubah lokal bagi fungsi1 ; |
4 | panggil fungsi2 ; |
5 | penutup curly brace(s) ; |
6 | whitespace ; |
7 | tentukan fungsi2 ; |
8 | pembuka curly brace(s) ; |
9 | ayat untuk dipaparkan di Terminal dengan memanggil pemboleh ubah $var ; |
10 | penutup curly brace(s) ; |
11 | whitespace ; |
12 | tentukan pemboleh ubah global ; |
13 | panggil fungsi1 ; |
Pengeluaran di terminal adalah:-
In func2, var = func1 local
Fungsi terakhir dipanggil dalam skrip di atas adalah fungsi1. Fungsi1 ini mempunyai pemboleh ubah lokal dan turut memanggil fungsi2.
Pemboleh ubah yang dipanggil di dalam fungsi2 ini akan muktamad membawa kepada pemboleh ubah lokal yang telah ditetapkan di dalam fungsi1, walaupun terdapat pemboleh ubah global yang telah ditentukan kemudiannya.Sumber: Bash Reference Manual
Edisi 5.0, untuk Bash versi terkini yakni 5.0 yang telah dikemaskini dalam Mei 2019.
Rujukan Bab 3: Ciri-ciri Asas Shell (Basic Shell Features)
Contoh skrip diberi bagi case
:#!/usr/bin/env bash
echo -n "Enter the name of an animal: "
read ANIMAL
echo -n "The $ANIMAL has "
case $ANIMAL in
horse | dog | cat) echo -n "four";;
man | kangaroo ) echo -n "two";;
*) echo -n "an unknown number of";;
esac
echo " legs."
Nombor baris bermula dari baris yang telah diserlahkan (highligted).Baris | Keterangan |
---|
1 | untuk memasukkan nama haiwan dengan baris ayat di dalam petikan (simbol quotation "" atau koma pembuka terbalik & koma penutup terbalik) ; |
2 | untuk membaca nama haiwan yang dimasukkan dengan pemboleh ubah HAIWAN ; |
3 | untuk cetak pengeluaran pemboleh ubah "$HAIWAN (yang dimasukkan) mempunyai " ; |
4 | binaan bersyarat case bagi pemboleh ubah $HAIWAN bermula; |
5 | senaraikan nama-nama haiwan untuk kes pertama dengan simbol saluran paip | (rujuk 3.2.2 Pipelines) sebagai pemisah, tutup senarai dengan penutup kurungan dan cetak pengeluaran ciri "(berkaki) empat" ; |
6 | senarai nama-nama haiwan untuk kes kedua dan cetak pengeluaran ciri "(berkaki) dua" ; |
7 | bagi haiwan selainnya dan cetak pengeluaran ciri "(berkaki) yang tidak diketahui" ; |
8 | tutup binaan bersyarat esac ; |
9 | sambung cetakan bagi melengkapkan ayat ciri-ciri haiwan (mempunyai berapa) " kaki" ; |
Jika masukkan pemboleh ubah 'kucing', maka pengeluaran di terminal adalah:-
The cat has four legs.
Jika masukkan pemboleh ubah 'kanggaru', maka pengeluaran di terminal adalah:-
The kangaroo has two legs.
Jika masukkan pemboleh ubah selainnya seperti 'lembu', maka pengeluaran di terminal adalah:-
The cow has an unknown number of legs.