@ [参数]在makefile中的含义是什么?

时间:2015-05-01 17:19:33

标签: makefile

makefile中的@[arguments]语法是什么意思?例如,我遇到了一个包含以下内容的makefile:

all: $(EXEC_NAME)
   @[ -p video_fifo ] || mkfifo video_fifo

这是做什么的?

1 个答案:

答案 0 :(得分:2)

无。你正在解析它。

前导@适用于制作。这意味着"沉默这个命令"。请参阅GNU make手册中的Recipe Echoing

该行的其余部分是shell脚本。在这种情况下,它以测试[ -p video_fifo ]开头(您经常会在if语句if [ -n "$var" ]的上下文中看到此内容,或者有关[的更多信息,请参阅test / -p|| mkfifo video_fifo标志),然后video_fifo创建[ fifo,如果||测试返回false(因此allQueriesRan或运营商)。