I just saw some code in bash that I didn’t quite understand. Being the newbie bash scripter, I’m not sure what’s going on.
echo ${0##/*}
echo ${0}
I don’t really see a difference in output in these two commands (prints the script name). Is that # just a comment? And what’s with the /*. If it is a comment, how come it doesn’t interfere with the closing } brace?
Can anyone give me some insight into this syntax?
See the section on Substring removal on the parameter expansion page of the bash-hackers’ wiki: