bersama catatan peribadi & teknikalnya.

Manual Rujukan Bash: Catatan 2


geeky stuff
#nota | #bash
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)

Subtopik 3.3 Fungsi-fungsi Shell (Shell Functions)

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).
BarisKeterangan
1tentukan fungsi1 ;
2pembuka curly brace(s) (Rujuk 3.2.4.3 Grouping Commands);
3tentukan pemboleh ubah lokal bagi fungsi1 ;
4panggil fungsi2 ;
5penutup curly brace(s) ;
6whitespace ;
7tentukan fungsi2 ;
8pembuka curly brace(s) ;
9ayat untuk dipaparkan di Terminal dengan memanggil pemboleh ubah $var ;
10penutup curly brace(s) ;
11whitespace ;
12tentukan pemboleh ubah global ;
13panggil 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.

Kali terakhir dikemaskini:
Top