小编典典

如何将文件内容读入批处理文件中的变量?

all

此批处理文件将构建从 TEST 发布到 LIVE。我想在这个文件中添加一个检查约束,以确保在特定文件夹中有一个随附的发布文档。

"C:\Program Files\Windows Resource Kits\Tools\robocopy.exe" "\\testserver\testapp$"        
"\\liveserver\liveapp$" *.* /E /XA:H /PURGE /XO /XD ".svn" /NDL /NC /NS /NP
del "\\liveserver\liveapp$\web.config"
ren "\\liveserver\liveapp$\web.live.config" web.config

所以我有几个关于如何实现这一目标的问题......

  1. 文件夹中有一个version.txt文件,这个\\testserver\testapp$文件的唯一内容是内部版本号(例如,45 - for build 45) 如何将文件内容读version.txt入批处理文件中的变量?

  2. 如何\\fileserver\myapp\releasedocs\ {build}.doc使用第 1 部分中的变量代替 {build} 检查文件 , 是否存在?


阅读 108

收藏
2022-07-08

共1个答案

小编典典

将文件内容读入变量:

for /f "delims=" %%x in (version.txt) do set Build=%%x

或者

set /p Build=<version.txt

两者的行为相同,只有文件中的一行,对于更多行,for变体会将 最后 一行放入变量中,而set /p将使用 第一行。

使用变量——就像任何其他环境变量一样——它是一个,毕竟:

%Build%

所以要检查是否存在:

if exist \\fileserver\myapp\releasedocs\%Build%.doc ...

尽管很可能那里不允许使用 UNC 路径。现在无法测试,但请记住这一点。

2022-07-08