我的是这样的:
progname=${0%.*}
progname=${progname##*/}
这可以嵌套(或不嵌套)到一行中,即单个表达式吗?
我正在尝试去除脚本名称的路径和扩展名,以便仅保留基本名称。以上两行工作正常。我的“C”本性只是驱使我更加混淆这些。
最佳答案
Bash 支持间接扩展:
$ FOO_BAR="foobar"
$ foo=FOO
$ foobar=${foo}_BAR
$ echo ${foobar}
FOO_BAR
$ echo ${!foobar}
foobar
这应该支持您正在寻找的嵌套。
关于bash - ${var} 参数扩展表达式可以嵌套在 bash 中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/917260/