中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 救急求教,如何把|当符号输出而不是命令
作者:
标题: 救急求教,如何把|当符号输出而不是命令 上一主题 | 下一主题
kuzei
新手上路





积分 8
发帖 4
注册 2005-8-2
状态 离线
『楼 主』:  救急求教,如何把|当符号输出而不是命令

我想实现输出在一文本中这样一个格式的批处理
00-5E-8A-EE-8D-0D=192.168.0.37|37-YZ

我做的批处理如下
ipconfig /all >e:\ipconfig.txt
find "Physical Address" e:\ipconfig.txt >e:\phyaddr.txt
for /f "skip=2 tokens=12" %%M in (e:\phyaddr.txt) do set Mac=%%M
;问题在这里
echo %Mac%=192.168.0.%1|%1-YZ >>c:\1.txt
中间的 | 和dos下的管道命令相同如果改成
echo %Mac%=192.168.0.%1"|"%1-YZ >>c:\1.txt
输出格式又会变成

00-5E-8A-EE-8D-0D=192.168.0.37"|"37-YZ
请高手指点有没有办法

[ Last edited by kuzei on 2007-2-1 at 01:40 AM ]

2007-2-1 01:34
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
namejm
荣誉版主

batch fan


积分 5226
发帖 1737
注册 2006-3-10
来自 成都
状态 离线
『第 2 楼』:  

  写成 echo %Mac%=192.168.0.%1^|%1-YZ >>c:\1.txt。

[ Last edited by namejm on 2007-1-31 at 12:47 PM ]



尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
2007-2-1 01:35
查看资料  发短消息 网志   编辑帖子  回复  引用回复
kuzei
新手上路





积分 8
发帖 4
注册 2005-8-2
状态 离线
『第 3 楼』:  



  Quote:
Originally posted by namejm at 2007-2-1 01:35:
  写成 echo %Mac%=192.168.0.%1^|%1-YZ >>c:\1.txt。

[ Last edited by namejm on 2007-1-31 at 12:47 PM ]

测试可行~十分感谢
能不能说说^符号都起什么作用

2007-2-1 01:50
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
SpikeKnox
初级用户




积分 116
发帖 28
注册 2007-1-3
状态 离线
『第 4 楼』:  ^符号的作用

The ampersand (&), pipe (|), and parentheses ( ) are special characters that must be preceded by the escape character (^) or quotation marks when you pass them as arguments.

& | ( ) 都是特殊字符,当这些字符当作参数传递时,必须加上转义字符^或者加上引号。

2007-2-1 15:39
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: