Echo附加到文本文件

问题描述 投票:0回答:1

因此,当我将文件从批处理文件回显到文本文件时,我可以毫无问题地转义特殊字符。但是,当我回显一个特定的字符组合时,我似乎无法找到一种方法,它只是回显到屏幕而不是文件。

这是有效的......

echo firsttest^=uncpath>>test.txt
echo [secondtest]>>test.txt

这是不起作用的......

echo thirdtest^=1>>test.txt
echo fourthtest^=2>>test.txt

我试过逃避一个和两个箭头角色,但仍然没有去。

有什么建议?我确定它与使用“1>”和“2>”的控制台输出的标准重定向有关,但只是不知道如何解决这个问题。

感谢名单。

batch-file output echo special-characters
1个回答
1
投票

你的分析是正确的。有两个主要概念可以解决它:

(echo thirdtest=1)>>test.txt
(echo fourthtest=2)>>test.txt

>>test.txt echo thirdtest=1
>>test.txt echo fourthtest=2

(注意:=不是需要转义的特殊字符之一)

在你的重定向行中哪里无关紧要,正如运行echo on所示。 (如果你喜欢迷茫,请输入echo hello>file.txt world,然后输入type file.txt

另一个注意事项:如果你echo几行,它更快:

(
  echo first line
  echo second line
  echo third line
)>>test.txt

(原因:只需要一次磁盘访问(读/修改/写入)而不是对每一行做同样的事情)你不会只用三行来注意它,但想想写几百行(例如在一个循环中) 。节省的时间将是巨大的。

© www.soinside.com 2019 - 2024. All rights reserved.