我正在尝试学习shell脚本,我需要理解其他人的代码。$是什么?变量?我没法搜索答案,因为他们屏蔽了标点符号。


当前回答

$ ?最后执行命令的结果(退出码)。

其他回答

它非常适合用于调试,以防使用set -e时脚本退出。例如,输入echo $?命令后,该命令导致退出并查看返回的错误值。

$ ?是命令的退出状态,这样您就可以对一系列命令进行菊花链接。

例子

command1 && command2 && command3

如果command1的$?输出成功(0),如果$?command2将产生成功

它是上次执行命令返回的错误代码。0 =成功

先前执行的流程的返回值。

10.4获取程序的返回值 在bash中,程序的返回值存储在一个特殊的变量中 名为$ ?。 这说明了如何捕获程序的返回值,I 假设dada目录不存在。(这也是 迈克建议) #!/bin/bash CD /dada &> /dev/null Echo rv: $? CD $(pwd) &> /dev/null Echo rv: $?

更多细节请参见Bash编程手册。

$ ?最后执行命令的结果(退出码)。