标题: [文本处理] 如何把一些批处理命令直接输出到文本?? [打印本页]
作者: z18137 时间: 2018-8-23 03:43 标题: 如何把一些批处理命令直接输出到文本??
如题,想用批处理把【ver | find "5.1." > NUL && set lj=D:\Program Files\XYZ】输出到1.txt,可是按照批处理的常用输出惯例【echo ver | find "5.1." > NUL && set lj=D:\Program Files\XYZ>>1.txt】处理后,发现【1.txt】文件根本就没有被创建!
然后用【echo ^ver | find "5.1." > NUL && set lj=D:\Program Files\XYZ>>1.txt】,发现【1.txt】仍旧未被创建!
最后用【echo “ver | find "5.1." > NUL && set lj=D:\Program Files\星宇”>>1.txt】命令后,发现【1.txt】被创建了,但是里面的内容为:【 “ver | find "5.1." > NUL && set lj=D:\Program Files\星宇”】前后多了个双引号啊,我只要【ver | find "5.1." > NUL && set lj=D:\Program Files\XYZ】该怎么写批处理啊?
作者: hlzj88 时间: 2018-8-23 06:19
- echo ver ^| find "5.1." ^> NUL ^&^& set lj^=D:\Program Files\XYZ>>1.txt
复制代码
完成这样的任务,要注意对具有 功能的 特殊符号进行转义,比如上面的 | & > = ,令它们作为一个普通字符进行输出,就没有问题了。
作者: Batcher 时间: 2018-8-23 08:34
特殊字符需要转义,推荐:
https://mp.weixin.qq.com/s/McvY4CiR-SYGaCha7lmjIw
作者: yhcfsr 时间: 2018-8-23 08:58
- @echo off
- set "str=ver | find "5.1." > NUL && set lj=D:\Program Files\XYZ"
- for /f "delims=" %%a in ("%str%") do >1.txt echo;%%a
复制代码
作者: z18137 时间: 2018-8-23 18:18
谢谢上面三位热心帮助我的朋友!
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |