在这个makefile中
dirs = $(shell ls)
clean:
$(foreach dir,$(dirs),echo $(dir);)
Run Code Online (Sandbox Code Playgroud)
输出是
$ make clean
echo bin; echo install.sh; echo Makefile; echo README.md; echo utils;
bin
install.sh
Makefile
README.md
utils
Run Code Online (Sandbox Code Playgroud)
为什么它首先显示命令,然后执行它?我怎么能省略第一行?
Fli*_*mzy 35
使用@字符前置命令.例:
dirs = $(shell ls)
clean:
@$(foreach dir,$(dirs),echo $(dir);)
Run Code Online (Sandbox Code Playgroud)