![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-05 23:02 |
共 48,039 主题排行 / 350,124 发帖 / 今日 2 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [求助]奇怪delims=为什么总不能删除空格?? |
| 可打印版本 841 / 6 |
| 第1楼 redrains | 发表于 2007-09-30 02:10 |
| 初级用户 发帖 26 积分 49 | |
|
[求助]奇怪delims=为什么总不能删除空格?? 我用
@echo for each ps in getobject _ >ps.vbs @echo ("winmgmts:\\.\root\cimv2:win32_process").instances_ >>ps.vbs @echo wscript.echo ps.handle^&vbtab^&ps.name^&vbtab^&ps.executablepath:next >>ps.vbs cscript //nologo ps.vbs >>task.txt & del ps.vbs pause 列举了进程: 得到如下: 1952 360tray.exe E:\program files\360safe\safemon\360Tray.exe 3420 QQ.EXE D:\Program Files\Tencent\QQ\QQ.exe 我用for /f " skip=1 tokens=1 delims=, " %%i in ('find "QQ.exe" task.txt') do @echo %%i 却得到: 3420 QQ.EXE D:\Program 我想去掉前面的空格得到3420,但是却从Program Files才进行分割,请问为什么?我将怎么分割为好 [ Last edited by redrains on 2007-9-30 at 02:13 AM ] |
|
| 第2楼 zh159 | 发表于 2007-09-30 02:21 |
| 金牌会员 发帖 1,467 积分 3,687 | |
|
那个分隔不是空格,是制表符{TAB}
|
|
| 第3楼 redrains | 发表于 2007-09-30 08:15 |
| 初级用户 发帖 26 积分 49 | |
|
那我怎么分离制表符{TAB} ,得到我想要的PID值呀?
|
|
| 第4楼 ccwan | 发表于 2007-09-30 08:32 |
| 金牌会员 发帖 1,160 积分 2,725 来自 河北廊坊 | |
|
将for /f " skip=1 tokens=1 delims=, " %%i in ('find "QQ.exe" task.txt') do @echo %%i
改成for /f " skip=1 tokens=1 delims=, " %%i in ('find "QQ.exe" task.txt') do @echo %%i 注意红色的部分跟的空白部分是按TAB键得到的 |
|
| 第5楼 redrains | 发表于 2007-09-30 08:45 |
| 初级用户 发帖 26 积分 49 | |
|
谢谢ccwan,说得很清楚,已经可以了,但是在文件首行它还会出现---------- TASK.TXT ,能够屏蔽或删除吗?
|
|
| 第6楼 ccwan | 发表于 2007-09-30 08:50 |
| 金牌会员 发帖 1,160 积分 2,725 来自 河北廊坊 | |
|
for /f "tokens=1 delims= " %%i in ('findstr "QQ.exe" task.txt') do @echo %%i
|
|
| 第7楼 redrains | 发表于 2007-09-30 08:59 |
| 初级用户 发帖 26 积分 49 | |
|
谢谢,真是万分感谢!已结!^_^
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |