中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 请教FOR /F "delims=" 句的意思~ 上一主题 | 下一主题
path
初级用户





积分 55
发帖 25
注册 2007-5-11
状态 离线
『楼 主』:  请教FOR /F "delims=" 句的意思~

@echo off
FOR /F "delims=" %%I in (%0) do Set TP=%%~dpI
regsvr32  /s "%TP%isoshell.dll"
cd /d "%TP%drivers"
"%TP%drivers\isocmd.exe" -i

2008-9-27 13:10
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ygrzzz
初级用户





积分 62
发帖 24
注册 2008-9-17
状态 离线
『第 2 楼』:  

"delims=" 无任何分割符(去掉默认的分隔符空格和;),完整列出整行内容包括行首空格
而”tokens=*“这个能去行首空格列出一行内容,估计行内多空格会被单空格替换吧

@echo off
:: 进入批处理所在目录
cd /d %~dp0
regsvr32  /s "isoshell.dll"
cd /d "%~dp0drivers"
“%~dp0drivers\isocmd.exe" -i
这样可以吗
或者
@echo off
set pash=%~dp0;%~dp0drivers;%pash%
regsvr32  /s "isoshell.dll"
isocmd.exe" -i

[ Last edited by ygrzzz on 2008-9-27 at 13:39 ]

2008-9-27 13:26
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
path
初级用户





积分 55
发帖 25
注册 2007-5-11
状态 离线
『第 3 楼』:  

谢谢,能不能再说的详细点?

2008-9-27 13:36
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ygrzzz
初级用户





积分 62
发帖 24
注册 2008-9-17
状态 离线
『第 4 楼』:  

FOR /F "delims=" %%I in (%0) do Set TP=%%~dpI
对这句我理解仅仅是利用%0(代表批处理自身)
然后%%~dpI扩展到批处理自身所在的目录,这样的话就绕了个大弯
直接%~dp0就代表批处理所在目录啊

2008-9-27 13:44
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
path
初级用户





积分 55
发帖 25
注册 2007-5-11
状态 离线
『第 5 楼』:  

谢谢.....我慢慢看看...

2008-9-27 13:47
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 6 楼』:  

下次提问之前记得先在本版搜索一下delims=



2008-9-27 17:36
查看资料  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: