flerb Asked: 2018-05-20 10:21:47 +0800 CST2018-05-20 10:21:47 +0800 CST 2018-05-20 10:21:47 +0800 CST ${!#} 如何在 bash 中工作以获取最后一个命令行参数? 772 从 Advanced Bash-Scripting Guide 中,获取最后一个命令行参数: 或者:lastarg=${!#} 这是 对变量的间接引用。 请注意,这不起作用。$#lastarg=${!$#} bash 1 个回答 Voted Best Answer jesse_b 2018-05-20T10:41:06+08:002018-05-20T10:41:06+08:00 正如它所说,这是一个间接的参考。举个例子: $ var=test $ test='Hello, world' $ echo ${!var} Hello, world 现在,如果我要设置以下位置参数: $ set -- one two three 并将$#表示位置参数的总数: $ echo $# 3 这意味着当我像${!#}我所说的那样调用它时,给我名为的参数的值3: $ echo ${!#} three
正如它所说,这是一个间接的参考。举个例子:
现在,如果我要设置以下位置参数:
并将
$#
表示位置参数的总数:这意味着当我像
${!#}
我所说的那样调用它时,给我名为的参数的值3
: