Board logo

标题: 关于字符路径变短路径的问题 [打印本页]

作者: bd123456789     时间: 2008-10-25 12:45    标题: 关于字符路径变短路径的问题

for /f "delims=" %%a in ("C:\Program Files\Microsoft Office\OFFICE11\ipmom\InfoPath.exe.config") do @echo %%~sa
pause

能够正常读取
C:\PROGRA~1\MICROS~2\OFFICE11\ipmom\INFOPA~1.CON

修改一下:加几个88888
for /f "delims=" %%a in ("C:\Program Files\Microsoft Office\OFFICE11\ipmom\InfoPath88888.exe.config") do @echo %%~sa
pause
结果
C:\PROGRA~1\MICROS~2\OFFICE11\ipmom\InfoPath8888.exe.config

怎么最后InfoPath8888.exe.config→没有变短?

是不是我对短路径理解有问题?
即只有实际存在的路径才能....

再来:(手动添加一个实际存在的路径)
我在上面的路径下加了一个网页路径,即
for /f "delims=" %%a in ("C:\Program Files\Microsoft Office\OFFICE11\ipmom\直接从USB-CDROM一键把GHO系统克隆到第一硬盘第一分区之DIY - USB启动区 - 启动盘制作技术区 - 无忧启动论坛 - Powered by Discuz!") do @echo %%~sa
pause
结果最后的文件名(网页文件名)也没有正常显示成短路径,不知是怎么回事?
作者: tireless     时间: 2008-10-25 13:17
我执行你的第一条命令,显示的也是:

C:\PROGRA~1\MICROS~1\OFFICE11\ipmom\InfoPath.exe.config
作者: everest79     时间: 2008-10-25 15:37
utf-8
作者: everest79     时间: 2008-10-25 15:38
InfoPath8888.exe.config=infopa~1.con,要是前边没有相同文件
作者: youkaib     时间: 2008-10-25 17:38
这个是只扩充路径。你查看你的for用法就知道了。
作者: bd123456789     时间: 2008-10-27 08:55
多谢楼上各位

可是,for 的解释是这样的:

%~sI        - 扩充的路径只含有短名

不甚理解??

InfoPath8888.exe.config=infopa~1.con,要是前边没有相同文件

也不甚理解??

可能太笨了点吧