当我运行ls
不存在的文件名时,输出会报告这一点。我想删除该输出,但仍然在找到文件时报告。这是报告下面输出的 stderr 吗?
$> ls foo
ls: cannot access foo: No such file or directory
我正在使用 tcsh,但 bash 可以作为替代方案。
答案1
这是报告下面输出的 stderr 吗?
ls
是的,很可能 - 这取决于您使用的版本,但我相信大多数实现都会将错误打印到 stderr。要摆脱 stderr tcsh
:
( ls foo > /dev/tty ) >& /dev/null
答案2
您始终可以:
sh -c 'ls foo 2>/dev/null'
这是作弊吗?