如何将变量的值写入dos文本文件?

时间:2014-04-08 02:37:11

标签: batch-file cmd

如何在dos批处理脚本中将变量值写入文本文件?

(Y,JJJ,SERL和SERIAL是批处理文件中的变量)

我尝试了以下内容:

set SERIAL=%Y%+%JJJ%+%SERL% 
%SERIAL% > VAR_1.TXT
%T% > VAR_2.TXT
%A% > VAR_3.TXT
%SERL% > VAR_4.TXT

创建文件VAR _!。txt,VAR_2.txt,VAR_3.txt,VAR_4.txt,但它们为空(0字节)。

我知道这有一个简单的解决方案,但是自从我使用批处理文件已经20多年了(非常生锈!)

谢谢!

3 个答案:

答案 0 :(得分:4)

此方法允许长文件名,并且还会阻止尾随空格包含在文件中(空格是为了阻止其他问题,但最好使用此方法)。

(字符是避免echo中的其他错误的好方法。

>"VAR_1.TXT" echo(%SERIAL%
>"VAR_2.TXT" echo(%T%
>"VAR_3.TXT" echo(%A%
>"VAR_4.TXT" echo(%SERL%

答案 1 :(得分:2)

尝试使用echo获取价值?

echo %SERIAL% > VAR_1.TXT
echo %T% > VAR_2.TXT
echo %A% > VAR_3.TXT
echo %SERL% > VAR_4.TXT

答案 2 :(得分:0)

请注意,如果在SETLOCAL ENDLOCAL块中使用,则可以从全局上下文隐藏变量。

此外,如果您想要附加以创建新文件,您可以使用>>

SETLOCAL 
CALL SET B="fiiLOCAL"
echo %A% > VAR_1.TXT
SET A="fooGLOB2"
echo %B% >> VAR_1.TXT
ENDLOCAL
TYPE var_1.txt