无法弄清楚如何从NMAKE

问题描述:

我做这样的读文件:无法弄清楚如何从NMAKE


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

然而filecontent变量似乎并没有保存文件somefile.txt的内容

+0

你希望对内容做什么?有可能有更好的方法来做到这一点。 – crazyscot 2010-09-19 10:51:14

+0

somefile.txt是一个包含密码的单行文件,我不想在每个makefile中进行硬编码 – 2010-09-19 10:56:58

只需确保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] 

你可以试试像这样:

# ---- 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中抓取的密码。

它可以读取一个文件,是不使用!INCLUDE有效NMAKE文件。对于examle如果我们有一个包含单个文本行,我们可以做一个版本的文件version

//version file 
1.2.4 

//makefile 
VERSION= \ 
!INCLUDE <version> 

如果文件中包含一个以上的线这是行不通的。