$ echo "$?"
0
$ echo 'q' | dc || echo "$?"
1
为什么使用q
退出dc
被认为是错误?
(测试在Ubuntu 20.4上运行。)
答案1
这似乎是dc
代码中的一个错误,请转到底部dc/eval.c
,第 817 行:
reset_and_exit_quit:
reset_and_exit_fail:
signal(SIGINT, sigint_default);
return DC_FAIL;
reset_and_exit_success:
signal(SIGINT, sigint_default);
return DC_SUCCESS;
标签reset_and_exit_quit
应该出现在之后reset_and_exit_fail
而不是之前......这解释了为什么用户埃德加·马加隆 做不是经历这种行为因为@Suse 的人实际上有一个补丁:正确返回值
快速搜索gnu-utils 邮件列表不会返回与此问题相关的任何内容,因此如果有人有时间,请进行彻底的搜索,如果没有任何结果,请报告它。