繁体   English   中英

Linux grep -e命令

[英]Linux grep -e command

在makefile中,有一个命令行:

COUNT=`grep -e "->" < "$(SOME_DIR)/count.log" | wc -l` ;

在这里我想知道,如果此命令中的<出现表示输出重定向,并且count.log文件为空,它是否应该报告错误信息。

谢谢,

<表示输入重定向。 grep的标准输入附加到count.log文件。 如果count.log为空不是错误,但是如果count.log不存在则是错误。

这是我已执行的一些测试供您参考:

当没有count.log文件时,结果为:

# grep -e "->" < "count.log" | wc -l
-bash: count.log: No such file or directory
0

当存在一个空的count.log文件时,结果为:

# touch count.log
# grep -e "->" < "count.log" | wc -l
0

当存在匹配模式时,结果为:

# echo "->" > count.log
# grep -e "->" < "count.log" | wc -l
1

因此,如果文件不存在,您只会得到一个错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM