linux - 抑制makefile中命令调用的回声?

我为一个作业编写了一个程序,该程序应该将其输出打印到标准输出。分配规范需要创建一个 Makefile,当作为 make run > outputFile 调用时,它应该运行程序并将输出写入一个文件,该文件具有与规范中给出的相同的 SHA1 指纹。

我的问题是我的makefile:

...
run:
     java myprogram

还将运行我的程序(例如 java myprogram)的命令打印到输出文件,以便我的文件包含导致指纹错误的额外行。

有没有什么方法可以在命令调用不回显到命令行的情况下执行命令?

最佳答案

@添加到命令的开头告诉gmake不要打印正在执行的命令。像这样:

run:
     @java myprogram

正如 Oli 所建议的,这是 Make 的一项功能,而不是 Bash 的一项功能。

另一方面,Bash 永远不会回显正在执行的命令,除非你明确告诉它这样做(即使用 -x 选项)。

https://stackoverflow.com/questions/9967105/

相关文章:

python - 将字符串转换为 Python 类对象?

linux - 创建 .tar.gz 文件时排除目录

linux - 从 linux shell 脚本发送邮件

linux - 在 bash 中检查当前分区的可用磁盘空间

python - 如何更改绘图背景颜色?

linux - ~/.ssh/config 文件中的 SSH 端口转发?

python - 如何让 Flask 在端口 80 上运行?

python - 在 Python 2.6 中不推荐使用 BaseException.message

python - 无法安装 Python 包 [SSL : TLSV1_ALERT_PROTOCOL

python - 无法使用 Ctrl-C 终止 Python 脚本