Berikut adalah prosedur penting untuk mendeklarasikan fungsi permanen:
Buka ~/.bashrc
file dalam editor teks. Tidak masalah editor teks mana, asalkan Anda tahu cara menggunakannya dan selama Anda membuka/home/<username>/.bashrc
Di akhir ~/.bashrc
menyatakan fungsi Anda sendiri, misalnya:
find_dirs(){
find "$1" -type d
}
Simpan dan tutup file.
The ~/.bashrc
file dibaca setiap kali Anda membuka shell interaktif (yang tab baru terminal, login melalui ssh
, atau tty1 terbuka atau konsol virtual lainnya). Ini tidak akan tersedia dalam file skrip, karena ~/.bashrc
tidak dibaca untuk shell non-interaktif. Ini juga tidak tersedia jika Anda menjalankan bash
dengan --norc
opsi.
Jika Anda ingin fungsi tersedia segera di tab yang sedang terbuka, gunakan source ~/.bashrc
perintah.
Fungsi mengambil argumen seperti perintah biasa. Misalnya, $1
dengan $9
menunjukkan parameter posisi saat Anda memanggil suatu fungsi. Dalam contoh di atas hanya find_dirs
mengambil satu parameter posisi, dan akan disebut sebagai find_dirs /etc
. Anda juga dapat menggunakan $@
untuk merujuk ke semua parameter posisi. Fungsinya juga menerima pengalihan. Anda dapat memanggil suatu fungsi dengan find_dirs $1 > /dev/null
; kami juga dapat mendeklarasikannya sebagai berikut:
find_dirs(){
find "$1" -type d
}
Catatan dari man bash
: "Fungsi dijalankan dalam konteks shell saat ini; tidak ada proses baru yang dibuat untuk menafsirkannya". Itu berarti Anda juga harus mengetahui fungsi yang memiliki kemampuan untuk mengubah lingkungan eksekusi shell Anda - ubah variabel dan pengaturan terminal.