转载:dos批处理中路径获取

在DOS的批处理中,有时候须要知道当前的路径。命令行

在DOS中,有两个环境变量能够跟当前路径有关,一个是%cd%, 一个是%~dp0。
 
    这两个变量的用法和表明的内容是不一样的。
 
  1. %cd% 能够用在批处理文件中,也能够用在命令行中;
展开后,是驱动器盘符:+当前目录,如在dos窗口中进入c:\dir目录下面,输入:echo %cd% ,则显示为:c:\dir 。
%cd%的内容是能够被改变的,其内容为命令的执行路径或批处理文件的执行路径。
   
  2.%~dp0只能够用在批处理文件中,它是由它所在的批处理文件的目录位置决定的,
是批处理文件所在的盘符:+路径。在执行这个批处理文件的过程当中,
它展开后的内容是不能够改变的。
 
%~dp0 “d”为Drive的缩写,即为驱动器,磁盘、“p”为Path缩写,即为路径,目录cd是转到这个目录,不过我以为cd /d %~dp0 还好些选项语法:    ~0         - 删除任何引号("),扩充 %0    %~f0        - 将 %0 扩充到一个彻底合格的路径名(“f”是file,即文件)    %~d0        - 仅将 %0 扩充到一个驱动器号    %~p0        - 仅将 %0 扩充到一个路径    %~n0        - 仅将 %0 扩充到一个文件名(“n”是name 文件名)    %~x0        - 仅将 %0 扩充到一个文件扩展名    %~s0        - 扩充的路径只含有短名(“s”为Short,短的)    %~a0        - 将 %0 扩充到文件的文件属性(“a”为attribute,即属性)    %~t0        - 将 %0 扩充到文件的日期/时间(“t”time)    %~z0        - 将 %0 扩充到文件的大小(Size 大小)    %~$PATH:0   - 查找列在路径环境变量的目录,并将 %0 扩充                  到找到的第一个彻底合格的名称。若是环境变量名                  未被定义,或者没有找到文件,此组合键会扩充到                  空字符串能够组合修饰符来获得多重结果:    %~dp0       - 仅将 %0 扩充到一个驱动器号和路径    %~nx0       - 仅将 %0 扩充到一个文件名和扩展名    %~fs0       - 仅将 %0 扩充到一个带有短名的完整路径名    %~dp$PATH:0 - 查找列在路径环境变量的目录,并将 %I 扩充                  到找到的第一个驱动器号和路径。    %~ftza0     - 将 %0 扩充到相似输出线路的 DIR%0为当前批处理文件若是0换成1为第一个文件,2为第2个
相关文章
相关标签/搜索