![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-09 21:50 |
共 47,811 主题排行 / 349,897 发帖 / 今日 2 篇 / 48,255 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [已解决]批处理参数扩展,无法得到正确的短格式 |
| 可打印版本 806 / 3 |
| 第1楼 dejoy | 发表于 2008-09-25 09:49 |
| 初级用户 发帖 64 积分 76 | |
|
[已解决]批处理参数扩展,无法得到正确的短格式 我有a.bat如下,显示各种参数的扩展值:
执行a "c:\afff sf\ttt.txt",显示结果如下: 1="c:\afff sf\ttt.txt" ~1=c:\afff sf\ttt.txt ~f1=c:\afff sf\ttt.txt ~p1=\afff sf\ ~n1=ttt ~s1=c:\afff sf\ttt.txt ~dp1=c:\afff sf\ 查看call /?,~s1是返回短格式名称,但这里返回的并不是短格式而是完整的c:\afff sf\ttt.txt,不知是何故,请教. win2000/winxp/win2003都是如此,win98好像无法解释扩展参数,带~的都返回空 注:此扩展有个限制,即要被扩展的目录存在,才能转换成短格式,否则原样返回 [ Last edited by dejoy on 2008-9-25 at 11:37 PM ] |
|
| 第2楼 moniuming | 发表于 2008-09-25 10:11 |
| 银牌会员 发帖 574 积分 1,335 来自 广西 | |
|
因为你的路径及文件名还不够长
|
|
| 第3楼 dejoy | 发表于 2008-09-25 12:35 |
| 初级用户 发帖 64 积分 76 | |
|
不够长?不是超过8个字符就会转成短格式了吗?那需要多长啊?
这个说法似乎不对,经测试 a "c:\sfsfsfsf kklllklll\slgkjglkjlkjo.txt" 显示结果: 1="c:\sfsfsfsf kklllklll\slgkjglkjlkjo.txt" ~1=c:\sfsfsfsf kklllklll\slgkjglkjlkjo.txt ~f1=c:\sfsfsfsf kklllklll\slgkjglkjlkjo.txt ~p1=\sfsfsfsf kklllklll\ ~n1=slgkjglkjlkjo ~s1=c:\sfsfsfsf kklllklll\slgkjglkjlkjo.txt ~dp1=c:\sfsfsfsf kklllklll\ 这个够长了吧,可是还没转换成短格式 [ Last edited by dejoy on 2008-9-25 at 12:37 PM ] |
|
| 第4楼 dejoy | 发表于 2008-09-25 23:34 |
| 初级用户 发帖 64 积分 76 | |
|
知道了,原来此扩展有个限制,即要被扩展的目录存在,才能转换成短格式,否则原样返回.如存在C:\Documents and Settings\Administrator\My Documents\a.txt
执行:a "C:\Documents and Settings\Administrator\My Documents\a.txt" 显示结果(正确): 1="C:\Documents and Settings\Administrator\My Documents\a.txt" ~1=C:\Documents and Settings\Administrator\My Documents\a.txt ~f1=C:\Documents and Settings\Administrator\My Documents\a.txt ~p1=\Documents and Settings\Administrator\My Documents\ ~n1=a ~s1=C:\DOCUME~1\ADMINI~1\MYDOCU~1\a.txt ~dp1=C:\Documents and Settings\Administrator\My Documents\ [ Last edited by dejoy on 2008-9-25 at 11:38 PM ] |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |