找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 30959|回复: 4

[文本处理] 如何把一些批处理命令直接输出到文本??

[复制链接]
发表于 2018-8-23 03:43:49 | 显示全部楼层 |阅读模式
如题,想用批处理把【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】该怎么写批处理啊?
发表于 2018-8-23 06:19:29 | 显示全部楼层
  1. echo ver ^| find "5.1." ^> NUL ^&^& set lj^=D:\Program Files\XYZ>>1.txt
复制代码
完成这样的任务,要注意对具有 功能的  特殊符号进行转义,比如上面的 | & > = ,令它们作为一个普通字符进行输出,就没有问题了。

评分

参与人数 1技术 +1 收起 理由
z18137 + 1 谢谢 亲测有效!

查看全部评分

发表于 2018-8-23 08:34:29 | 显示全部楼层
特殊字符需要转义,推荐:
https://mp.weixin.qq.com/s/McvY4CiR-SYGaCha7lmjIw

评分

参与人数 1技术 +1 收起 理由
z18137 + 1 又学到一种方法

查看全部评分

发表于 2018-8-23 08:58:23 | 显示全部楼层
  1. @echo off
  2. set "str=ver | find "5.1." > NUL && set lj=D:\Program Files\XYZ"
  3. for /f "delims=" %%a in ("%str%") do >1.txt echo;%%a
复制代码

评分

参与人数 1技术 +1 收起 理由
z18137 + 1 哇噻,居然有这么多种方法!

查看全部评分

 楼主| 发表于 2018-8-23 18:18:07 | 显示全部楼层
谢谢上面三位热心帮助我的朋友!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 16:03 , Processed in 0.018550 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表