中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 请问一下···怎么样能获取一个文件的当前位置···
作者:
标题: 请问一下···怎么样能获取一个文件的当前位置··· 上一主题 | 下一主题
JasonMing
初级用户





积分 116
发帖 42
注册 2007-7-29
状态 离线
『楼 主』:  请问一下···怎么样能获取一个文件的当前位置···

就是例如文件是 D:\test\a.txt

怎样在批处理程序中获取它的位置???

2007-7-29 19:57
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
slore
铂金会员





积分 5212
发帖 2478
注册 2007-2-8
状态 离线
『第 2 楼』:  

for对变量的扩充

    ~I         - 删除任何引号("),扩充 %I
    %~fI        - 将 %I 扩充到一个完全合格的路径名
    %~dI        - 仅将 %I 扩充到一个驱动器号
    %~pI        - 仅将 %I 扩充到一个路径
    %~nI        - 仅将 %I 扩充到一个文件名
    %~xI        - 仅将 %I 扩充到一个文件扩展名
    %~sI        - 扩充的路径只含有短名
    %~aI        - 将 %I 扩充到文件的文件属性
    %~tI        - 将 %I 扩充到文件的日期/时间
    %~zI        - 将 %I 扩充到文件的大小
    %~$PATH:I   - 查找列在路径环境变量的目录,并将 %I 扩充
                  到找到的第一个完全合格的名称。如果环境变量名
                  未被定义,或者没有找到文件,此组合键会扩充到
                  空字符串

可以组合修饰符来得到多重结果:

    %~dpI       - 仅将 %I 扩充到一个驱动器号和路径
    %~nxI       - 仅将 %I 扩充到一个文件名和扩展名
    %~fsI       - 仅将 %I 扩充到一个带有短名的完整路径名
    %~dp$PATH:i - 查找列在路径环境变量的目录,并将 %I 扩充
                  到找到的第一个驱动器号和路径。
    %~ftzaI     - 将 %I 扩充到类似输出线路的 DIR

2007-7-29 20:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
andred0421
初级用户




积分 114
发帖 47
注册 2006-11-20
状态 离线
『第 3 楼』:  

楼上说得详细点

2007-7-29 20:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
JasonMing
初级用户





积分 116
发帖 42
注册 2007-7-29
状态 离线
『第 4 楼』:  

那么现在我这个文件名是一个变量  %1 ,  怎么样能够获得他的绝对路径(驱动器盘符+路径)???
可不可以给我对这个问题举个例子,谢谢了···

2007-7-29 20:40
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
slore
铂金会员





积分 5212
发帖 2478
注册 2007-2-8
状态 离线
『第 5 楼』:  

echo %~dp1
pause

2007-7-29 21:10
查看资料  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: