为什么我得到&#34;&lt;预计此时错误&#34;在调用windows命令&#34; echo&#34; <! - ?xml version =“1.0”encoding =“UTF-8”? - >&#34; &GT; tmp.xml&#34;

时间:2016-07-23 09:03:02

标签: xml windows batch-file utf-8

我正在尝试使用以下Windows命令将行<?xml version="1.0" encoding="UTF-8"?>添加到tmp.xml

echo <?xml version="1.0" encoding="UTF-8"?> > tmp.xml

我收到错误:

>was expected at this time

我尝试使用双引号:

echo "<?xml version="1.0" encoding="UTF-8"?>" > tmp.xml

这会将行<?xml version="1.0" encoding="UTF-8"?>写入文件中,但在双引号内。

2 个答案:

答案 0 :(得分:4)

您可能希望在保留字符^<之前尝试使用>作为转义字符。

Microsoft Windows [Version 10.0.10586]
(c) 2015 Microsoft Corporation. All rights reserved.

C:\Users\topdog>echo ^<?xml version="1.0" encoding="UTF-8"?^> > tmp.xml

C:\Users\topdog>type tmp.xml
<?xml version="1.0" encoding="UTF-8"?>

C:\Users\topdog>

答案 1 :(得分:1)

你不能那样嵌套引号。 "one "two" three"包含两个带引号的字符串括起来的未加引号的字符串two,其中没有一个包含实际的文字"个字符。