我遇到了一个包含类似
之类语句的shell脚本if [ $val -eq $? ]
$?
在这里意味着什么?
答案 0 :(得分:19)
$?
返回上次完成的命令的状态。 状态0告诉您所有内容都已完成。
此外,$
符号是一个特殊符号 - 在这种情况下$val
提取变量val
所持有的值
答案 1 :(得分:17)
$#
=参数数量。答案是3
。
$@
=传递了哪些参数。答案是1 2 3
。
$?
=上次命令成功。答案是0
,表示“是”。
答案 2 :(得分:15)
我发现link非常有用,是最好的答案。它包括与样本的明确表达。
答案 3 :(得分:3)
$是什么?这意味着什么?
$?退出状态的最后结果... 0默认为“成功”
bash# ls *.*
bash# echo $?
bash# 0
bash# ls /tmp/not/existing/
bash# echo $?
bash# 2
答案 4 :(得分:2)
这是上一个命令的退出状态的值。如果成功,这是0
。
答案 5 :(得分:-1)
ls *.*
或ls
会产生相同的结果。含义显示当前目录中包含任何扩展名的零个或多个文件。
echo $?
会显示退出状态。如果最后一个命令显示至少一个文件,退出状态将为零(成功)。