中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 帮我看一下这两个有什么不同!
作者:
标题: 帮我看一下这两个有什么不同! 上一主题 | 下一主题
hy433124shc
中级用户





积分 201
发帖 75
注册 2007-2-24
状态 离线
『楼 主』:  帮我看一下这两个有什么不同!

FOR /F %%A IN (5.TXT) DO ECHO %%A >> 4.TXT

如果 5.TXT中为
1
12
123
1234
54321
543
5432
命令成功

若5.TXT中为
ExecutablePath                  
C:\WINDOWS\system32\svchost.exe  
ExecutablePath  
命令不成功

为什么?

这两个有区别吗?

2007-3-29 04:11
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Climbing
铂金会员

网络独行侠


积分 6962
发帖 2753
注册 2003-4-16
来自 河北保定
状态 离线
『第 2 楼』:  

结果有什么区别呢?

可能只需要在for里面加上一个参数,倒好:for /f "tokens=*"...



偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
2007-3-29 04:16
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (653668)  编辑帖子  回复  引用回复
NaturalJ0
银牌会员




积分 1181
发帖 533
注册 2006-8-14
状态 离线
『第 3 楼』:  

看不出哪里不成功

2007-3-29 04:21
查看资料  发短消息 网志   编辑帖子  回复  引用回复
hy433124shc
中级用户





积分 201
发帖 75
注册 2007-2-24
状态 离线
『第 4 楼』:  

如果5.TXT中为

ExecutablePath                  
C:\WINDOWS\system32\svchost.exe  
ExecutablePath  
               
则在我这没形成 4.TXT



如果5.TXT为
1
12
123
1234
54321
543
5432

则形成 4.TXT

[ Last edited by hy433124shc on 2007-3-28 at 03:28 PM ]

2007-3-29 04:25
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
hy433124shc
中级用户





积分 201
发帖 75
注册 2007-2-24
状态 离线
『第 5 楼』:  

3楼对我说    ‘你5.txt保存的编码可能不是ANSI。"

于是
我把以5.TXT内容为
ExecutablePath                  
C:\WINDOWS\system32\svchost.exe  
ExecutablePath  

的内容COPY 到 6.TXT
用FOR /F %%A IN (6.TXT) DO ECHO %%A >> 4.TXT
使命令成功,形成4.TXT

再用
FOR /F %%A IN (5.TXT) DO ECHO %%A >> 4.TXT
命令还是不成功,没形成4.TXT


怪了!!!
难到问题出在这个5.TXT上?

[ Last edited by hy433124shc on 2007-3-28 at 05:13 PM ]

2007-3-29 05:27
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Climbing
铂金会员

网络独行侠


积分 6962
发帖 2753
注册 2003-4-16
来自 河北保定
状态 离线
『第 6 楼』:  

看不出有什么问题:

  Quote:
G:\work\dos\batch>type 5.txt
ExecutablePath
C:\WINDOWS\system32\svchost.exe
ExecutablePath

G:\work\dos\batch>for /f %i in (5.txt) do @echo %i >> 4.txt

G:\work\dos\batch>type 4.txt
ExecutablePath
C:\WINDOWS\system32\svchost.exe
ExecutablePath





偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
2007-3-29 05:34
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (653668)  编辑帖子  回复  引用回复
hy433124shc
中级用户





积分 201
发帖 75
注册 2007-2-24
状态 离线
『第 7 楼』:  

回6楼

3楼对我说    ‘你5.txt保存的编码可能不是ANSI。"

内容为
ExecutablePath                  
C:\WINDOWS\system32\svchost.exe  
ExecutablePath

是一BAT中的
WMIC PROCESS WHERE(PROCESSID="%3") GET executablepath >> 5.TXT 形成的,
而内容为
1
12
123
1234
是我用记事本做的,

我试了,就是不行!
3楼说了之后,我就像5楼那样试了!

2007-3-29 05:53
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
hy433124shc
中级用户





积分 201
发帖 75
注册 2007-2-24
状态 离线
『第 8 楼』:  

5.TXT内容是一BAT中的
WMIC PROCESS WHERE(PROCESSID="%3" ) GET executablepath >>5.TXT
形成的

而内容为
1
12
123
是我用记事本做的,

是在同一台机器中做的!

请问一下,我想把 WMIC PROCESS WHERE(PROCESSID="%3" ) GET executablepath  的结果传给  A

如下为什么不行,
SET A=<WMIC PROCESS WHERE(PROCESSID="%3" ) GET executablepath

给我个方法,最好能去掉  ExecutablePath
得到 A= C:\WINDOWS\system32\svchost.exe 之类的

谢谢了!!!

[ Last edited by hy433124shc on 2007-4-1 at 03:38 PM ]

2007-3-29 06:08
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Climbing
铂金会员

网络独行侠


积分 6962
发帖 2753
注册 2003-4-16
来自 河北保定
状态 离线
『第 9 楼』:  

for /f "usebackq tokens=* skip=1" %%i in (`WMIC PROCESS WHERE PROCESSID^=%3 GET executablepath`) do set A=%%i

试试上面这个命令。



偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
2007-3-29 22:28
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (653668)  编辑帖子  回复  引用回复

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


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



论坛跳转: