发布时间:2011-02-18 19:55:15作者:知识屋
浅谈for命令中的变量扩展
首先表明本人并不赞同用变量扩展这个概念,因为用这个概念是不利于新手的理
解的。同时本人认为用保留变量信息这个概念可能更为贴切,我们姑且先如此定义
吧。
新手们可能在别人的代码中见过%%~ni %%~xi %%~dpi这样的字符,于是很多新手
于是发问了:这个东东是什么啊?老手们便丢下一句话“变量扩展”或写下for /?。
有心一点的新手便会打开cmd输入for /?来查看帮助信息,结果往往是看得一头雾水,
不知道仍是不知道,今天我们就来解决这个问题了。
大家先用以下代码搭建好以下环境:
@echo off
md d:temp
cd.>d:tempabcd.efgh
start d:temp
再在当前目录中新建test.bat,内容如下:
@echo off
for /f %%a in ('dir /s /b a*') do (
echo %%a:文件完整信息
echo %%~da:保留文件所在驱动器信息
echo %%~pa:保留文件所在路径信息
echo %%~na:保留文件名信息
echo %%~xa:保留文件后缀信息
echo %%~za:保留文件大小信息
echo %%~ta:保留文件修改时间信息
echo %%~dpa:保留文件所在驱动器和所在路径信息
echo %%~nxa:保留文件名及后缀信息
echo %%~pnxa:保留文件所在路径及文件名和后缀信息
echo %%~dpna:保留文件驱动器、路径、文件名信息
echo %%~dpnxa:保留文件驱动器、路径、文件名、后缀信息
)
pause>nul
运行这个批处理大家就会明白了。。。
大家只要记住在这其中d p n x (t z)这些字符分别是代表的是什么意思就可以了,
同时这些字符是可以互相任意搭配的,如%%~dzxa主要看你想保留下文件(变
量)的哪些信息了。
2011-02-18
批处理教程之——字符串查找:find
DOS批处理应用循环拷贝文件到固定目录的子目录
批处理中的时间计算详解
VBS对Office软件Word、Excel等的操作实例
如何进入DOS系统/界面
dos下通过wmic命令查看硬盘和内存/CPU信息(windows自带命令查看
一份比较详细的DOS命令说明【DNJSB整理】
浅谈批处理for命令中的变量扩展
dos(cmd)中删除、添加、修改注册表命令