如何使用脚本检查上一个命令是否成功执行?

如何使用脚本检查上一个命令是否成功执行?

所以我在这里遇到了很多麻烦...所以说我想输入

useradd jamie

然后我当前的脚本是:

if [ $? -eq 0 ]; then echo Success; else echo ERROR: duplicate, try different name; fi

好吧,如果我再做一次

useradd jamie

它应该回显错误消息。但每次它都只是说成功。我假设这意味着我必须将输入和脚本放在同一个文件中?我该怎么办?如果 jamie 是系统中唯一的用户,那么“useradd max”也应该回显“成功”,但它总是回显“成功”。非常感谢任何帮助

答案1

每个脚本都运行在子壳因此,获取脚本而不是运行它:

$ useradd jamie
useradd: user 'jamie' already exists
$ . script.sh
ERROR: duplicate, try different name

在 Bash 中,您还可以使用source代替..

相关内容