2014-11-24 35 views
0

我有这样的代码:阅读与statment文件 - 批量

@echo off 
for /f "delims=" %%a in ("%~dp0\files\text\lead_r.txt") do set /p key= < lead_r.txt 
ECHO %key% 
PAUSE 

我希望它做的是打开一个特定的文本文件,读取它,然后写什么在它%key%。它在lead_r.txt和批处理文件位于同一文件夹中时起作用,但当我将lead.txt移动到\files\text时失败。在\files\text没有空格的文件,所以我不知道问题出在哪里。

感谢

回答

0

很难理解你的目标,但尝试下面的代码片段:

@echo off >Nul 
setlocal EnableDelayedExpansion 
for /f "delims=" %%a in ("%~dp0\files\text\lead_r.txt") do (
rem the same file in next line 
rem set /p key=< lead_r.txt 
set /p key= < %%a 
ECHO !key! 
PAUSE 
) 
endlocal 

这里介意关键字命令setlocalEnableDelayedExpansion;扩大在执行时变量,而不是在分析时,如果使用!key!语法而不是%key%之一。

+0

谢谢,我一直在寻找。 – Prixeler 2014-11-24 22:25:49