windows的batchfile可以有%0-%9参数,其中%0默认表示batchfile的全路径,%1-%9为用户的传入参数。
以下特殊标记可以用来获得文件的属性,
如果对%0使用特殊标记,表示获得batachfile的相关属性,
如果%1-%9中某个%*是个文件的路径,也可以使用如下特殊标记来获得%*表示文件的相关属性
例如:D:\testfolder\test.bat
echo
off
echo path name:
echo %1
echo fully qualified path name:
echo %~f1
echo dirive:
echo %~d1
echo path :
echo %~p1
echo name:
echo %~n1
echo extention:
echo %~x1
echo short name:
echo %~s1
echo attribute:
echo %~a1
echo time :
echo %~t1
echo size:
echo %~z1
echo directory:
echo %~dp1
echo path name:
echo %1
echo fully qualified path name:
echo %~f1
echo dirive:
echo %~d1
echo path :
echo %~p1
echo name:
echo %~n1
echo extention:
echo %~x1
echo short name:
echo %~s1
echo attribute:
echo %~a1
echo time :
echo %~t1
echo size:
echo %~z1
echo directory:
echo %~dp1
调用时为D:\testfolder\test.bat "c:\test\new folder\mytable.txt",输出如下:
D:
\>
echo
off
path name:
" c:\test\new folder\mytable.txt "
fully qualified path name:
c: \ test \ New Folder \ mytable . txt
dirive:
c:
path :
\ test \ New Folder \
name:
mytable
extention:
. txt
short name:
c: \ test \ NEWFOL~ 1 \ mytable . txt
attribute:
--a------
time :
2010 - 09 - 27 15 : 01
size:
16
directory:
c: \ test \ New Folder \
path name:
" c:\test\new folder\mytable.txt "
fully qualified path name:
c: \ test \ New Folder \ mytable . txt
dirive:
c:
path :
\ test \ New Folder \
name:
mytable
extention:
. txt
short name:
c: \ test \ NEWFOL~ 1 \ mytable . txt
attribute:
--a------
time :
2010 - 09 - 27 15 : 01
size:
16
directory:
c: \ test \ New Folder \
参考:
http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/percent.mspx?mfr=true
完!