
标题: for /f 命令里,delims若指定为",如何来实现 [打印本页]
作者: Will 时间: 2008-8-4 00:59 标题: for /f 命令里,delims若指定为",如何来实现
RT
s.txt 内容如下:
用for /f 命令来读取love:CODE: [Copy to clipboard]
@echo off
for /f "tokens=2 delims="" %%i in (s.txt) do echo %%i
这里的"貌似有问题 执行出错
请各位大大教教小菜 若要将delims指定为" 时,如何实现?
PS.在一个帖子里看到一行命令:CODE: [Copy to clipboard]
if /i "%~d0"=="c:" (exit) else (cd c:)
这里的%~d0是什么意思?指的是什么?
感谢各位大大不吝赐教
[ Last edited by Will on 2008-8-4 at 01:09 AM ]
作者: pusofalse 时间: 2008-8-4 01:50
CODE: [Copy to clipboard]
@echo off
set/p var=<s.txt
for /f "tokens=2" %%a in ("%var:"= %") do echo %%a
pause>nul
%~1 - expands %1 removing any surrounding quotes (")
%~f1 - expands %1 to a fully qualified path name
%~d1 - expands %1 to a drive letter only
%~p1 - expands %1 to a path only
%~n1 - expands %1 to a file name only
%~x1 - expands %1 to a file extension only
%~s1 - expanded path contains short names only
%~a1 - expands %1 to file attributes
%~t1 - expands %1 to date/time of file
%~z1 - expands %1 to size of file
%~$PATH:1 - searches the directories listed in the PATH
environment variable and expands %1 to the fully
qualified name of the first one found. If the
environment variable name is not defined or the
file is not found by the search, then this
modifier expands to the empty string
[ Last edited by pusofalse on 2008-8-4 at 01:51 AM ]
作者: zqz0012005 时间: 2008-8-4 07:12
各位前辈早已得出的结论是:双引号"不能做为delims的分隔符!
没想到现在还有人不信这个邪!(当然也可能是前辈们没有找到而已)
作者: HAT 时间: 2008-8-4 10:20
CODE: [Copy to clipboard]
@echo off
set str=i"love"u
set str=%str:"=#%
for /f "tokens=2 delims=#" %%i in ("%str%") do echo %%i
作者: flyinspace 时间: 2008-8-6 04:24
| Quote: |
Originally posted by zqz0012005 at 2008-8-4 07:12 AM:
各位前辈早已得出的结论是:双引号"不能做为delims的分隔符!
没想到现在还有人不信这个邪!(当然也可能是前辈们没有找到而已) |
|
嗯。是啊。是不能做为delims的分隔符。
但并不代表不可以用 “ 分隔。。。
作者: Will 时间: 2008-8-19 16:24
感谢各位大大 原来是把"用其他的字符替换…
| 欢迎光临 中国DOS联盟论坛 (http://cndos.fam.cx/forum/) |
Powered by Discuz! 2.5 |