“找不到命令”消息被重定向过(“command not found” message is redi

2019-10-17 07:24发布

$ foobar
sh: foobar: not found
$ foobar 2>/dev/null
$ 

我试图重定向只foobar的的标准错误(如果存在foobar的,可以运行),但外壳的错误信息被重定向了。 这发生在bash和ksh和sh,而不是在csh。 我不熟悉Bourne shell的源代码,但我想这是因为shell首先叉,然后重定向,然后试图EXEC(),并在执行exec()失败,它发送一个错误信息已经被重定向标准错误。

Answer 1:

如果foobar的是一些可执行文件,然后尝试: -

$ ./foobar
sh: foobar: not found
$ ./foobar 2>/dev/null #alternatively you can use full path.
$ 


文章来源: “command not found” message is redirected too
标签: bash shell