2013-10-04 48 views
0

我正在重新学习脚本,并找到了一本书没有很好解释的例子。有人可以解释这些特殊变量的含义吗?

例如为:

if [ ! $# -eq 0 ] 

这是测试,以确定是否 '$#' 不等于零,是吗?

但是'$#'的值是什么?

有其他吗?

'#@', '#?' ? 

谢谢

+0

你的意思是'$ @'和'$?',对吧? '$ @'是传递给脚本的所有参数值,可作为1个变量使用,'$?'是先前执行的cmd的返回码。要看到它的裸露的骨头,真的; echo $?;错误; echo $?'。祝你好运。 – shellter

回答

1

$#是你传递给脚本的参数个数。

例如,您有脚本调用a.sh

#!/bin/bash 

echo $# 

并运行它像

/bin/bash a.sh 1 2 3 

你会得到3

还有其他人喜欢[email protected]

相关问题