批处理查找文件大小为0的文件,然后保存路径到一个文件中,怎么写?谢谢大侠
展开全部
@echo off
for /r d:\ %%a in (*) do (
if %%~za==0 echo %%a >>d:\result.txt
)
pause
扫描d:\盘下所有文件大小等于0的文件,然后将这个文件的路径保存在d:\盘下的 result.txt。。。。。
不知是否符合你的要求,有问题可以追问.....
为什么不追问我呢......我的%%~za 和楼上兄弟的%%~zi 是一样的 没有本质区别的%%za是将%%a得到的参数进行扩展,得到该文件的大小
追问
%%~za==0 %%~za是什么意思啊?能详细解释一下吗?
追答
%%~za是将for 语句中 %%a变量得到的结果进行扩展,扩展到该文件的大小。
你可以在cmd窗口下 输入 for /? 查看for的详解。。。扩展在后几页。
其中%%a 中的a 根据个人习惯而定,我喜欢写a,教程中用的都是i。。。。
%~I - 删除任何引号("),扩展 %I
%~fI - 将 %I 扩展到一个完全合格的路径名
%~dI - 仅将 %I 扩展到一个驱动器号
%~pI - 仅将 %I 扩展到一个路径
%~nI - 仅将 %I 扩展到一个文件名
%~xI - 仅将 %I 扩展到一个文件扩展名
%~sI - 扩展的路径只含有短名
%~aI - 将 %I 扩展到文件的文件属性
%~tI - 将 %I 扩展到文件的日期/时间
%~zI - 将 %I 扩展到文件的大小
%~$PATH:I - 查找列在路径环境变量的目录,并将 %I 扩展
到找到的第一个完全合格的名称。如果环境变量名
未被定义,或者没有找到文件,此组合键会扩展到
空字符串
展开全部
for %%1 in ("1.txt") do if %%~z1 EQU 0 move 1.txt c:\1.txt
判断文件1.txt大小是否为零,为零时将其移动到c盘下。
望采纳
追问
请问%%~z1 %%~zi是什么意思啊?上面写的是%%~za 能说明什么意思吗?
追答
差不多的
一个是字节
一个大小
你采纳的那个代码 如果你要查找其他磁盘里的 只需要把d:该成其他盘符就可以了
汗。。。 我的for还没学全啊 汗。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询