Windows批处理文件重定向输出

时间:2011-01-31 19:19:43

标签: windows batch-file cmd

我需要从批处理文件中输出一些参数数据。我可以重定向输出,没问题。我的问题是我需要输出像

这样的东西

set value1=0
set value2=1
echo value1 = %value1%>>temp.txt
echo value2 = %value2%>>temp.txt

在参数值

之后没有空格

但由于CMD假设%value#%是重定向值,因此不会正确重定向。

所以,如果我做了像

这样的事情

echo value1 = %value1% >>temp.txt
echo value2 = %value2% >>temp.txt

它可以工作,但我在参数值之后得到一个空格,并且下一个读取此文件的应用程序不受我的控制,并且在值之后出现空格错误。

我必须遗漏一些简单的东西。

2 个答案:

答案 0 :(得分:2)

>>temp.txt echo value1 = %value1%
>>temp.txt echo value2 = %value2%

(如果路径中包含空格>>"c:\some folder\file.txt" echo value1 = %value1%),则在路径上使用引号当然很重要。

答案 1 :(得分:0)

我明白了。

我只需引用变量

echo value2 = ^%value2%>>temp.txt

对此感到抱歉,它一直在“逃避”我(打算用双关语)。