用 make -n 预览将要执行的命令(干跑)

打印 make 将要执行的全部命令而不真正运行——审查陌生 Makefile 的安全方式。

Linux构建make 构建试运行低风险
执行 make -n install 可打印 install 目标将运行的命令而不执行;加 -B(make -n -B all)可忽略时间戳打印完整构建计划。

01命令

命令
$ make -n install
make -n -B all   # pretend nothing is up to date

02作用说明

-n 参数(--just-print)会让 make 完整执行依赖分析——判断哪些目标过期、按什么顺序——但只打印命令而不执行。配合 -B(--always-make)时所有目标都被视为过期,因此看到的是完整构建计划而非增量部分。平时用 @ 静默的命令行也会打印出来,这常常能提前暴露 rm 或 ssh 这类隐藏操作。

03风险

风险低风险
使用条件make (preinstalled on most Linux systems)
!注意: 使用 $(shell ...) 的命令在 -n 下照样会执行,因为 make 解析时就要展开变量——干跑并不保证完全没有副作用。

04撤销

✓无需撤销——该命令不会改变持久状态。

05来源

  • make(1) — Linux man page
    Ubuntu Manpages · technical · 2026-09-17
    依据: make man page: '-n, --just-print, --dry-run, --recon Don't actually run any recipe; just print them' and -B --always-make.

最后验证: 2026-09-17 · 分类: 开发者