我想知道是否有人可以帮助我解决此错误:
wc: Files/Unused-CMA_host.txt: 没有这样的文件或目录
该文件不存在,然后我想将输出重定向到 /dev/null
我尝试使用> /dev/null 2>&1
在其他情况下有效的这句话,但不是在这里:
wc -l Files/Unused-CMA_host.txt | awk '{print $1}' > /dev/null 2>&1
有人知道为什么吗?
谢谢。
我想知道是否有人可以帮助我解决此错误:
wc: Files/Unused-CMA_host.txt: 没有这样的文件或目录
该文件不存在,然后我想将输出重定向到 /dev/null
我尝试使用> /dev/null 2>&1
在其他情况下有效的这句话,但不是在这里:
wc -l Files/Unused-CMA_host.txt | awk '{print $1}' > /dev/null 2>&1
有人知道为什么吗?
谢谢。
重定向适用于管道的各个组件,而不是整个管道。在您的示例中,您仅重定向awk
的标准输出。要重定向整个管道的标准错误和标准输出,需要一个命令组,例如
{ wc -l Files/Unused-CMA_host.txt | awk '{print $1}' ; } > /dev/null 2>&1
但是,如果文件不存在,则不会有任何标准输出。也许您想重定向标准错误以抑制错误消息?然后你可以简单地使用
wc -l Files/Unused-CMA_host.txt 2> /dev/null | awk '{print $1}'
在文件不存在的情况下,awk
将简单地从空流中读取并且什么都不做。