zsh:仅将标准错误重定向到/ dev / null

时间:2017-10-02 14:55:47

标签: zsh

我想使用类似pdfs=$(echo *.pdf)的内容并删除在没有文件的情况下出现的错误消息。但是docs只有两个输出被重定向组合的例子。

1 个答案:

答案 0 :(得分:3)

标准错误是文件描述符2,如果您实际运行的命令是您希望产生标准错误的输出。

pdfs=$(echo *.pdf 2> /dev/null)

但是,不要像你的例子那样编写代码。扁平字符串无法有效存储任意文件名列表,因为您无法区分文件名分隔符和文件名中的有效字符。相反,使用不需要任何单独命令的数组(因此需要重定向标准错误):

pdfs=( *.pdf )