$ {var}参数扩展表达式可以嵌套在bash中吗?

$ {var}参数扩展表达式可以嵌套在bash中吗?

我有的是这个:

progname=${0%.*}progname=${progname##*/}

这可以嵌套(或不嵌套)成一行,即单个表达式吗?

我正在尝试从脚本名称中删除路径和扩展名,以便只留下基本名称。以上两行都运行正常。我的“C”性质只是让我更加混淆这些。


墨色风雨
浏览 511回答 3
3回答

弑天下

Bash支持间接扩展:$ FOO_BAR="foobar"$ foo=FOO $ foobar=${foo}_BAR $ echo ${foobar}FOO_BAR $ echo ${!foobar}foobar这应该支持您正在寻找的嵌套。

qq_笑_17

一个旧线程,但也许答案是使用间接:$ {!PARAMETER}例如,请考虑以下几行:H="abc"PARAM="H"echo ${!PARAM} #gives abc
打开App,查看更多内容
随时随地看视频慕课网APP