我有的是这:
progname=${0%.*} progname=${progname##*/}
这可以嵌套(或不是)一行,即单个表达式?
如果是通过巢,你的意思是这样:
#!/bin/bash export HELLO="HELLO" export HELLOWORLD="Hello,world!" echo ${${HELLO}WORLD}
然后不,你不能嵌套$ {var}表达式。 bash语法扩展器不会理解它。
但是,如果我理解你的问题,你可以看看使用basename命令 – 它从给定的文件名剥离路径,如果给定扩展名,也将剥离。例如,运行basename /some/path/to/script.sh .sh将返回脚本。