中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 有空格的路径文读不出来 上一主题 | 下一主题
yyqfeng
初级用户





积分 22
发帖 19
注册 2009-7-12
状态 离线
『楼 主』:  有空格的路径文读不出来

@echo off
for /f %%i in (1.txt) do echo %%i
pause
读取1.txt里的路径E:\BW Tool_v2.0.1.3(20100426 19.12) 正常版\Data\Bin
只显示了BW。BW空格后面的不显示出来了是怎样会事,可以解决的吗?

[ Last edited by yyqfeng on 2010-6-17 at 17:23 ]

2010-6-17 17:01
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





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


for /f "delims="




2010-6-17 17:08
查看资料  发短消息 网志   编辑帖子  回复  引用回复
yyqfeng
初级用户





积分 22
发帖 19
注册 2009-7-12
状态 离线
『第 3 楼』:  

我加入了那个"delims="也不能实现的哦

2010-6-17 17:29
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yyqfeng
初级用户





积分 22
发帖 19
注册 2009-7-12
状态 离线
『第 4 楼』:  

我加入了"delims=*"就可以解决了
谢谢你

2010-6-17 17:42
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
treesingwind
新手上路





积分 7
发帖 6
注册 2010-6-10
状态 离线
『第 5 楼』:  

for /f %%a in (1.txt) do echo %%a 意思是提取1.txt内容里的第一部分。
它的效果等同于
for /f "delims= "%% in (1.txt) do echo %%a
因为程序默认delims分割是用空格进行分割的。
所以写不写“delims= "都一样。
当"delims= "变成"delims="的时候,程序就不再以空格做为分割符。
那么1.txt里的E:\BW Tool_v2.0.1.3(20100426 19.12) 正常版\Data\Bin中的空格就被忽略了,
最后程序继续提取到的第一部分就是完整的E:\BW Tool_v2.0.1.3(20100426 19.12) 正常版\Data\Bin了。

[ Last edited by treesingwind on 2010-6-18 at 08:46 ]

2010-6-18 08:45
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yyqfeng
初级用户





积分 22
发帖 19
注册 2009-7-12
状态 离线
『第 6 楼』:  已解决

谢谢你们的帮忙

2010-6-18 09:16
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yyqfeng
初级用户





积分 22
发帖 19
注册 2009-7-12
状态 离线
『第 7 楼』:  

文件夹有空格的路径怎么在DOS下复制不了文件?比如E:\A BC这个路径用
xcopy e/ E:\A BC F: 运行时一闪而过

2010-6-19 10:04
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





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

加双引号



2010-6-19 10:31
查看资料  发短消息 网志   编辑帖子  回复  引用回复
yyqfeng
初级用户





积分 22
发帖 19
注册 2009-7-12
状态 离线
『第 9 楼』:  

@echo off&setlocal enabledelayedexpansion
set a=50
set b=10
mode con:cols=%a% lines=%b%
for /f "skip=1" %%a in ('wmic logicaldisk where DriveType^=2 get DeviceID') do (
set a=%%a
set a=!a:~0,1!.bat
more +15<"%~fs0">!a!
start !a! "%%a"
)
exit
@echo off
set a=50
set b=10
mode con:cols=%a% lines=%b%
title 批量复制工具
color 0a
echo.正在复制文件到%~1盘中...
for /f %%i in (1.txt) do (@echo 你要拷贝的文件夹是"%%i"
xcopy /e %%i %~1)
del %0&exit
pause
1.txt里的内容是E:\A BC怎样加双引号。我试了怎么不行的哦?

2010-6-21 19:29
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


积分 1039
发帖 897
注册 2009-3-1
来自 在地狱中仰望天堂
状态 离线
『第 10 楼』:  

对for /f 使用"delims="



批处理之家 http://bbs.bathome.net/forum-5-1.html
2010-6-21 19:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
crist
新手上路





积分 18
发帖 11
注册 2006-8-17
状态 离线
『第 11 楼』:  

我也有一个问题:

for /f "skip=4 tokens=*" %%I in ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows

NT\CurrentVersion\Winlogon" /v UIHost') do (
ECHO %%I
)
得出的结果是
UIHost  REG_SZ  d:\Program Files\LOGONUI\JingQi.exe

请问要怎样做才能把输入结果变成以下这样?
d:\Program Files\LOGONUI\JingQi.exe

[ Last edited by crist on 2010-6-21 at 22:52 ]

2010-6-21 22:46
查看资料  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: