Articles of 退出代码

Bash:将variables赋值的代码退出到命令replace

我很困惑当执行variables赋值和命令replace时,命令会返回什么样的错误代码: a=$(false); echo $? 它输出1 ,让我觉得variables赋值不会扫描或产生新的错误代码在最后一个。 但是当我尝试这个: false; a=""; echo $? 它输出0 ,显然这是什么a=""返回,它重写1返回false 。 我想知道为什么会发生这种情况,在variables赋值方面有没有其他的正常命令的特殊性? 或者仅仅是因为a=$(false)被认为是一个单一的命令,只有命令replace部分是有意义的? – 更新 – 谢谢大家,从答案和评论中我得到了一个观点:“当你使用命令replace分配一个variables时,退出状态就是命令的状态。 (by @Barmar),这个解释非常清晰,易于理解,但是对于程序员来说说话不够精确,我想从TLDP或者GNU man page等权威人士那里看到这个参考,请帮我看看出来,再次感谢!

为什么不能从主函数返回更大的值?

我试图返回一个更大的值,如1000forms,我的主要function,但是当我inputecho $? 它显示0。 如果我返回一个更小的值,如100,它会显示正确的值。 我的代码: int main(void) { return 1000; } 我们可以返回的价值是否有限制? 谢谢。

在linux shell中从“ftp”命令获得退出状态代码

我需要从命令行程序中检索退出状态代码。 不用担心,我用$ ?. 但是对于ftp,即使它没有连接,它也会打开ftp shell,所以我不能理解连接没有发生。 试试这个代码的理解: #!/bin/sh ftp 1234567 OUT=$? if [ $OUT -eq 0 ];then echo "ftp OK" else echo "ftp Error: "$OUT fi exit 0 任何帮助? 感谢菲利波

exec退出代码11的含义

我在linux web服务器上使用下面的代码 $error = exec('phantomjs table1.js', $op, $code); echo $code; // prints 11 on screen table1.js var page = require('webpage').create(); var url = 'table1.php'; page.open(url, function (status) { page.render('ss/table1.png'); phantom.exit(); }); table1.php echo '<h1>This should be converted to an image</h1>'; 我通过这个链接,但该代码不在那里列出。 任何想法这个退出代码是什么意思?

批次:“rd”的退出代码也是错误的

我正在写一个批处理(.bat)脚本,我需要处理删除文件夹失败的情况。 我使用%errorlevel%捕获退出代码,但在rd命令的情况下,它似乎不工作: C:\Users\edo\Desktop>rd testdir Directory is not empty C:\Users\edo\Desktop>echo %errorlevel% 0 为什么? 你有什么build议? 谢谢!

当进程被强制终止时的进程退出代码

当我们使用“任务pipe理器结束进程”命令终止Windows中的进程时,进程是否仍然会返回退出代码? 如果是这样,它返回什么退出代码? 谢谢

从batch file中获取错误代码

我有一个运行几个可执行文件的batch file,我希望它在成功时退出,但是如果退出代码<> 0则停止。我该怎么做?

如何在Windowsbatch file中获取Java程序的退出状态

类似于$? 在Linux中,有没有办法在Windowsbatch file( .bat )中获取程序的退出状态? 例如,程序成功执行后有一个System.exit(0) ,出现故障时有一个System.exit(1) ,如何将这些出口值捕获到.bat文件中?

如何正确报告批量退出状态?

我正面临一个奇怪的情况,我写的batch file报告了一个不正确的退出状态。 这里是一个重现问题的最小样本: bug.cmd echo before if "" == "" ( echo first if exit /b 1 if "" == "" ( echo second if ) ) echo after 如果我运行这个脚本(使用Python,但实际上也是以其他方式启动时发生的问题),下面是我得到的: python -c "from subprocess import Popen as po; print 'exit status: %d' % po(['bug.cmd']).wait()" echo before before if "" == "" ( echo first if […]

ErrorLevel为什么只能在||之后设置 运营商在一个失败的redirect?

当redirect失败时(由于文件不存在或文件访问不足),似乎不会设置ErrorLevel值(在以下示例中,文件test.tmp是写保护的,文件test.nil不存在): >>> (call ) & rem // (reset `ErrorLevel`) >>> > "test.tmp" echo Text Access is denied. >>> echo ErrorLevel=%ErrorLevel% ErrorLevel=0 >>> (call ) & rem // (reset `ErrorLevel`) >>> < "test.nil" set /P DUMMY="" The system cannot find the file specified. >>> echo ErrorLevel=%ErrorLevel% ErrorLevel=0 但是,只要失败的redirect之后是条件级联运算符|| ,这是查询退出代码, ErrorLevel被设置为1 ,意外: >>> (call ) & rem […]