如何将 stderr 重定向到 /dev/null 并将 stdout 重定向到 tcsh 中的管道?

如何将 stderr 重定向到 /dev/null 并将 stdout 重定向到 tcsh 中的管道?

我有以下代码tcsh

set dirs = `find $path -follow -name "test" | grep -v ".data"`

它将查找其下有目录的所有目录test,不包括.data.

我注意到,如果运行时出现问题find,例如,途中链接损坏,我会收到“权限被拒绝”错误,然后脚本tcsh会挂起,直到我手动终止它。我试图捕获所有错误并将它们重定向到/dev/null并将输出重定向到grep.

我遇到了不同的答案。例如,有一个话题建议仅忽略“权限被拒绝” - 这有效,但我试图将所有错误重定向到/dev/null而不仅仅是一个。但问题是管道|- 如何将 stderr 重定向到管道/dev/null并将 stdout 重定向到管道(即grep)?

相关内容