shell中的variables插值
这可能是一个非常基本的问题,但由于某种原因,我似乎过度看待明显。
我有一个名为filepath=/tmp/name
的variables
要访问variables,我知道我可以做这个$filepath
在我的shell脚本中,我试图做这样的事情(后面打勾是打算的)
`tail -1 $filepath_newstap.sh`
这条线路不通,duuh! 因为variables不叫$filepath_newstap.sh
如何将_newstap.sh
添加到variables名称中? 请注意,反蜱是用于expression评估的
使用
"$filepath"_newstap.sh
要么
${filepath}_newstap.sh
要么
$filepath\_newstap.sh
_
是标识符中的有效字符。 Dot不是,所以shell试图插入$filepath_newstap
。
当你引用一个未定义的variables时,你可以使用set -u
使shell退出时出错。
在variables名称周围使用花括号:
`tail -1 ${filepath}_newstap.sh`
在bash
: tail -1 ${filepath}_newstap.sh