Adakah yang bisa menjelaskan kepada saya apa yang dilakukan shell pada dua contoh A) dan B) di bawah ini? Ini jelas berperilaku berbeda, tetapi saya tidak bisa mencari tahu mengapa outputnya berbeda.
Contoh:
Mari kita memiliki skrip di direktori kami saat ini bernama bla.sh
dengan hanya satu perintah:
echo ${0##/*} hello
A)
Dimulai sebagai: ./bla.sh
memberi:./bla.sh hello
B)
Dimulai sebagai: . bla.sh
memberi:-bash hello
Karena saya menggunakan ini dalam skrip, output kedua (karena "-" di depan-bash) membunuh perintah. Tentu saja, yang sederhana --
sebelum ${...}
membantu, tetapi saya ingin memahami apa yang menyebabkan output di tempat pertama.
Saya suka bash. Dan vi [m]. Tapi saya ngelantur ...