标签: bash shell glob parameter-expansion
我在研究bash脚本时发现了这段代码:
dir=${0%/*}
我怀疑大括号内的代码是正则表达式,但我不明白这意味着什么。有什么想法吗?
答案 0 :(得分:2)
它不是正则表达式,但它是pattern匹配。它将dir设置为脚本的名称,即$0,但如果$0中存在斜杠,则没有最后一个斜杠和后面的任何非斜杠。如果$0中没有斜杠,则dir会获得$0的副本不变。请参阅Bash Hackers Wiki中的"Parameter Expansion"。
dir
$0