标题: [求助]请教For循环中,如何支持带空格路径
[打印本页]
作者: lwb1978
时间: 2007-7-7 22:51
标题: [求助]请教For循环中,如何支持带空格路径
例如:
For %%i in (%BmpList%) do If %%~zi EQU 0 Del "%BmpList%"
上面这句,如果%BmpList%带有空格就出问题,又不能在in中采用"%BmpList%" 这样的办法支持空格,请大大们只招,谢了
作者: lxmxn
时间: 2007-7-8 09:39
怎么不能加上引号?
作者: lwb1978
时间: 2007-7-8 15:50
Quote: |
Originally posted by lxmxn at 2007-7-8 09:39 AM:
怎么不能加上引号? |
|
比如 set BmpList=%temp%\bmp.txt
如果是用"%BmpList%"的话,我这里运行后for并不在bmp.txt里寻找,而是在%temp%\bmp.txt得出的字符串里寻找。
作者: lxmxn
时间: 2007-7-9 01:03
你測試過沒有?
Quote: |
C:\>type "C:\Documents and Settings\Administrator\桌面\d.bat"
@echo off
set ok=c:\Documents and Settings\Administrator\_viminfo
for %%a in ("%ok%") do @echo\%%~nxa&echo %%~dpa&echo %%~za
pause
C:\>"C:\Documents and Settings\Administrator\桌面\d.bat"
_viminfo
c:\Documents and Settings\Administrator\
9042
请按任意键继续. . . |
|
作者: lwb1978
时间: 2007-7-9 15:52
我测试了,在我的电脑上运行你上面的for得出的结果是:
_viminfo
c:\Documents and Settings\Administrator\
ECHO 处于关闭状态。
请按任意键继续. . .
不知道是什么问题了,难道我电脑的cmd有问题?
作者: lxmxn
时间: 2007-7-9 17:02
你的_viminfo莫非是个文件夹?
作者: lxmxn
时间: 2007-7-9 17:03
或者你根本没有_viminfo文件?
作者: lwb1978
时间: 2007-7-9 17:38
我明白了,原来for如果加了/f就会把"c:\Documents and Settings\Administrator\_viminfo"看成字符串了,晕。
作者: lxmxn
时间: 2007-7-9 17:53
那你为什么给的代码没有/f参数呢?
作者: lwb1978
时间: 2007-7-10 01:17
Quote: |
Originally posted by lxmxn at 2007-7-9 05:53 PM:
那你为什么给的代码没有/f参数呢? |
|
是我偷懒了,对不起,请问下如果在加/f的情况下有办法使用带空格的路径文件吗?
作者: lxmxn
时间: 2007-7-10 11:15
那要看你想得到什么?
如果是分析文件的内容,可以这样:
for /f "usebackq delims=" %a in ("C:\Documents and Settings\Administrator\_vimrc") do @echo\%a
如果想得到文件的属性,可以这样:
for /f "delims=" %a in ("C:\Documents and Settings\Administrator\_vimrc") do @echo\%~nxa&echo\%~za
作者: lwb1978
时间: 2007-7-10 18:03
问题解决,再次感谢版主的耐心指导