Dari manual bash
Aturan tentang definisi dan penggunaan alias agak membingungkan. Bash selalu membaca setidaknya satu jalur input lengkap sebelum menjalankan salah satu perintah di jalur itu. Alias diperluas ketika perintah dibaca, bukan saat dijalankan. Oleh karena itu, definisi alias muncul pada baris yang sama dengan perintah lain tidak berlaku hingga baris input berikutnya dibaca. Perintah yang mengikuti definisi alias di baris itu tidak terpengaruh oleh alias baru. Perilaku ini juga merupakan masalah ketika fungsi dijalankan. Alias diperluas ketika definisi fungsi dibaca, bukan ketika fungsi dieksekusi , karena definisi fungsi itu sendiri adalah perintah majemuk. Sebagai konsekuensi, alias yang didefinisikan dalam suatu fungsi tidak tersedia sampai setelah fungsi tersebut dieksekusi . Agar aman, selalu letakkan definisi alias pada baris yang terpisah, dan jangan gunakan alias dalam perintah majemuk.
Dua kalimat "Alias diperluas ketika definisi fungsi dibaca, bukan ketika fungsi dieksekusi" dan "alias yang didefinisikan dalam fungsi tidak tersedia sampai setelah fungsi dijalankan" tampaknya bertentangan satu sama lain.
Bisakah Anda menjelaskan masing-masing artinya?
.bashrc
file di bagian paling atas.