CODE: [Copy to clipboard]
C:\TEMP>set "str=`-=[]\;',./~%!@#o^&*()_+{}|:<>?"abc123ABC00"
C:\TEMP>echo "%str%"
"`-=[]\;',./~%!@#o^&*()_+{}|:<>?"abc123ABC00"
Echo 显示上面加了引号的变量内容成功(不加引号肯定显示不了这些特殊符号)
(然后再测试:)
C:\TEMP>echo %str%
此时不应有 >。
(说明上面有特殊符号原因)
C:\TEMP>echo %str%"
此时不应有 >。
(再上面这样测一个,给它“配”一个引号,输出错误,说明特殊符号不在“匹配”。
C:\TEMP>echo "%str%
"`-=[]\;',./~%!@#o^&*()_+{}|:<>?"abc123ABC00
(再上面这样测一下,给它左边“匹配”一下,结果可以成功输出)
(这说明 str 变量内的那一个单独的“引号” 就是str变量内abc123……左边的那一个)
(echo "%str% 正好与str变量中那个“引号”配对使用了,而后面的abc12……这些是非特殊字符)
所以,使用下面命令就可以成功写入文件了:
C:\TEMP>echo "%str% >test.txt
C:\TEMP>type test.txt
"`-=[]\;',./~%!@#o^&*()_+{}|:<>?"abc123ABC00