在makefile中,有一个命令行:
COUNT=`grep -e "->" < "$(SOME_DIR)/count.log" | wc -l` ;
我想知道,如果&lt;在此命令中出现表示输出重定向,如果count.log文件为空,则应报告错误信息。
谢谢,
答案 0 :(得分:1)
<
表示输入重定向。 grep
的标准输入附加到count.log
文件。如果count.log
为空,则不是错误,但如果count.log
不存在则会出错。
答案 1 :(得分:1)
以下是我为您提供的一些测试:
如果没有 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
因此,如果文件不存在,您将只会收到错误。