无法弄清楚如何从nmake读取文件

时间:2010-09-19 10:05:40

标签: nmake

我正在做这样的事情:

all: 
    @SET /p filecontent= < somefile.txt
    @echo %filecontent%

filecontent变量似乎不包含文件somefile.txt的内容。

3 个答案:

答案 0 :(得分:1)

只需确保somefile.txt采用可接受的nmake语法,然后!include。因此:

c:>type somefile.txt
PASSWORD=secret
c:>type makefile
!INCLUDE somefile.txt
!MESSAGE Password is [$(PASSWORD)]
c:>nmake -nologo
Password is [secret]

答案 1 :(得分:1)

可以使用!INCLUDE读取不是有效nmake文件的文件。例如,如果我们有一个包含单行文本的版本文件version,我们可以这样做:

//version file
1.2.4

//makefile
VERSION= \
!INCLUDE <version>

如果文件包含多行,则无效。

答案 2 :(得分:-1)

您可以尝试这样的事情:

# ---- vitaly.mak ----

target1:
# create and invoke a temporary cmd file
@<<mygetpassword.cmd
 @echo off
 setlocal
 @SET /p filecontent= < secret.txt
 @echo %filecontent%
 endlocal
<<

#--- END ---

我认为a cmd/bat file run within nmake.exe cannot affect the environment of nmake。因此,您必须使用从临时cmd文件中的secret.txt中获取的密码。