第四章、高级用法

1. 命令回显

在 执行 make 命令时,Makefile 内规则的命令总是会显示在控制台终端中,如:

all:
    echo "Hello Laowei!"
    echo "finished!"

执行 Make 的结果如下:

weimingze@mzstudio:~$ make
echo "Hello Laowei!"
Hello Laowei!
echo "finished!"
finished!

其中 echo "Hello Laowei!"echo "finished!" 都是命令的回显。如果不想在控制台终端中显示回显有两种方法:

  1. 在需要在回显的 命令前加让一个 @ 字符。
  2. 如果所有命令都不显示回显,可以在 make 命令后加 -s--silent 选项。

修改后的 Makefile 如下:

all:
    @echo "Hello Laowei!"
    echo "finished!"

执行 Make 的结果如下:

weimingze@mzstudio:~$ make 
Hello Laowei!
echo "finished!"
finished!
weimingze@mzstudio:~$ make -s
Hello Laowei!
finished!

可见 @echo "Hello Laowei!" 命令则不会显示命令回显,使用 make -s 则取消所有命令回显。