Share via


生成文件中的内联文件

内联文件包含了在生成文件中指定的文本。 其文件名在命令中可以用作输入(例如 LINK 命令文件),也可以将命令传递给操作系统。 运行创建文件的命令时,将在磁盘上创建该文件。

指定内联文件

filename 要显示的命令中指定两个尖括号 (<<)。 尖括号不能是宏扩展。 filename 是可选的:

<<filename

运行命令时,尖括号将替换为 filename(如果已指定)或唯一的 NMAKE 生成名称。 如果已指定,filename 必须跟在尖括号后面,之间没有空格或制表符。允许路径。 不需要扩展名或假设扩展名。 如果已指定 filename,则在当前目录或指定目录中创建该文件,改写现有的任何同名文件。 否则,在 TMP 目录(如果未定义 TMP 环境变量,则在当前目录)中创建该文件。 如果重复使用之前的 filename,NMAKE 将替换之前的文件。

创建内联文件文本

内联文件可以是临时的,也可以是永久的。

inline_text
.
.
.
<<[KEEP | NOKEEP]

在命令后的第一行指定 inline_text。 用两个尖括号 (<<) 在单独一行的行首标记端点,后跟可选的 KEEPNOKEEP。 该文件包含分隔括号前面的所有 inline_textinline_text 可以有宏扩展和替换,但不能包含指令或生成文件注释。 空格、制表符和换行符按原义处理。

临时文件在会话期间存在,并可由其他命令重复使用。 在右尖括号后指定 KEEP,以在 NMAKE 会话后保留文件;使用生成的文件名在磁盘上保留未命名的文件。 为临时文件指定 NOKEEP 或什么都不指定。 KEEPNOKEEP 不区分大小写。

重复使用内联文件

若要重新使用内联文件,请在定义和首次使用该文件的位置指定 <<filename,稍后再在同一命令或其他命令中重新使用 filename(不带 <<)。 创建内联文件的命令必须在使用该文件的所有命令之前运行。

多内联文件

命令可以创建多个内联文件:

command << <<
inline_text
<<[KEEP | NOKEEP]
inline_text
. . .
inline_text
<<[KEEP | NOKEEP]

对于每个文件,请指定一行或多行内联文本,后跟包含分隔符和可选 KEEPNOKEEP 的结束行。 在第一个文件分隔行后面的行上开始第二个文件的文本。

另请参阅

生成文件中的命令