今天想复制一些文件,需要先判断文件的大小,小的肯定是有问题的不需要复制,经过大量测试终于找到了比较好的方法,需要的朋友可以参考下
先来点简单的一句话代码:
复制代码 代码如下: for /f %i in ('dir /b c:450010.jpg') do echo %~zi
完整的判断代码:
复制代码 代码如下: @echo off ::每5分钟复制以下首页 for /f %%i in ('dir /b c:index2.htm') do ( set indexdx=%%~zi ) if %indexdx% gtr 5120 ( echo y | xcopy c:index2.htm /d /r /k c:index.htm ) pause
dos下判断文件大小
纯dos下恐怕不行,视窗下bat还马马虎虎,当c:1.txt大于3.999G失效。大约20秒检查一次。 复制代码 代码如下: @echo offsetlocal Enabledelayedexpansion set R=c:1.txt :1 ping -n 20 127.0 gt;nul for /f "tokens=1-3 delims= " %%a in ('dir "%R%"^|find /i "1 个文件"') do ( set Q=%%c set /a Q=!Q:,=! if !Q! lss 2048start "" "1.exe" ) goto 1
Dos脚本判断文件大小
复制代码 代码如下: @echo off setlocal EnableDelayedExpansion del 1.txt /qnbsp; del 2.txt /q for %%i in (*) do (echo %%~fzi gt;gt;1.txt)nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp; rem 将文件大小存储到1.txt
for /f "tokens=1* delims= " %%a in (1.txt) do ( nbsp;nbsp;nbsp; set "zer=%%a" nbsp;nbsp;nbsp; set "pat=%%b" nbsp;nbsp;nbsp; if !zer! gtr 5120 ( nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp; if not "!pat:~0,-1!"=="%~0" echo "!pat:~0,-1!" echo "!pat!" gt;gt; 2.txtnbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp; rem 将大于5KB的文件名称放到2.txt中 nbsp;nbsp;nbsp; ) ) echo "done."
【备注】if常用的判断语句
1、if exist d:test.txt (echo D盘下有test.txt存在) else (echo D盘下不存在test.txt) 2、if "abc"=="xyz" (echo 字符串abc等于字符串xyz) else (echo 字符串abc不等于字符串xyz) 3、if 1 equ 2 (echo 1等于2) else (echo 1不等于2) 4、if defined str (echo 变量str已经被赋值,其值为%str%) else (echo 变量str的值为空)
中文含义nbsp;nbsp;nbsp; 关系符nbsp;nbsp;nbsp; 英文解释
等于nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp; equnbsp;nbsp;nbsp; equal 大于nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp; gtrnbsp;nbsp;nbsp; greater than 大于或等于nbsp;nbsp;nbsp; geqnbsp;nbsp;nbsp; greater than or equal 小于nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp; lssnbsp;nbsp;nbsp; nbsp; less than 小于或等于nbsp;nbsp;nbsp; leqnbsp;nbsp;nbsp; nbsp; less than or equal 不等于nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp; neqnbsp;nbsp;nbsp; no equal
部分内容来自:http://www.cnblogs.com/cnpirate (编辑:广州站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|