0

我有一个名为 info.txt 的文件。我想读取文件的第一行并将其分配给makefile中的变量BUILD_NO。我该怎么做?

4

2 回答 2

1

如果您认为该值仅在命令脚本中可用,并且您不担心它会被引用,那么 Jonathan 的解决方案将非常有效。如果您希望它在 makefile 中也可用,或者您担心'$(BUILD_NO)'出现在您的脚本中,并且您愿意将自己限制在 GNU make 中,您可以使用:

BUILD_NO := $(shell head -n 1 info.txt)

(我head在这里使用只是因为它更有效)。在其他一些版本的 make 中有替代品,但不幸的是,没有真正可移植的。

于 2013-04-03T16:26:12.177 回答
0
BUILD_NO = `sed 1q info.txt`

当您引用${BUILD_NO}$(BUILD_NO)在一个动作中,shell 片段将被执行。您可能决定也需要双引号:

BUILD_NO = "`sed 1q info.txt`"

如果你想在依赖信息中得到它,你必须更加努力——make你在哪个平台上使用哪个版本?

于 2013-04-03T05:31:19.207 回答