我有一个 Makefile 脚本,其中的任务包含 rsync 语句,当我运行该脚本时,它会输出实际的 rsync 命令和来自 rsync 命令的响应。我想隐藏命令并仅显示响应,或者如果可能的话设置 rsync 命令的样式。如何做到这一点?
参见下面的代码,我已设法对其中的一些进行样式化,如您所见。(仅供参考:我省略了一些任务等,是的,我知道这是一些老派的东西:))
# Load environment variables from .env file
include .env
# Define ANSI colors
GRAY=\033[0;37m
NC=\033[0m
# Define default target
.PHONY: deploy
deploy:
@echo "
答案1
有多种方法可以在 makefile 中“静默”运行命令。
在特定命令前加上前缀
@
,例如:(@rsync -azP ...
您已经使用这些@echo
命令完成了此操作)。将特殊目标添加
.SILENT
到你的 makefile 中,例如:# Define default target .SILENT: .PHONY: deploy deploy:
make
使用-s
或参数运行--silent
。
看这里了解更多信息。