手机
当前位置:查字典教程网 >脚本专栏 >DOS/BAT >bat得到文件大小的代码
bat得到文件大小的代码
摘要:今天想复制一些文件,需要先判断文件的大小,小的肯定是有问题的不需要复制,经过大量测试终于找到了比较好的方法,需要的朋友可以参考下先来点简单的...

今天想复制一些文件,需要先判断文件的大小,小的肯定是有问题的不需要复制,经过大量测试终于找到了比较好的方法,需要的朋友可以参考下

先来点简单的一句话代码:

复制代码 代码如下:

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 off&setlocal Enabledelayedexpansion

set R=c:1.txt

:1

ping -n 20 127.0 >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 /q

del 2.txt /q

for %%i in (*) do (echo %%~fzi >>1.txt) rem 将文件大小存储到1.txt

for /f "tokens=1* delims= " %%a in (1.txt) do (

set "zer=%%a"

set "pat=%%b"

if !zer! gtr 5120 (

if not "!pat:~0,-1!"=="%~0" echo "!pat:~0,-1!"& echo "!pat!" >> 2.txt rem 将大于5KB的文件名称放到2.txt中

)

)

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的值为空)

中文含义 关系符 英文解释

等于 equ equal

大于 gtr greater than

大于或等于 geq greater than or equal

小于 lss less than

小于或等于 leq less than or equal

不等于 neq no equal

部分内容来自:http://www.cnblogs.com/cnpirate

【bat得到文件大小的代码】相关文章:

bat+xcopy实现只复制比目标文件更新的文件

批处理实现文本内容横列变纵列的代码

用bat批量创建文件夹

用批处理生成网页文件并打开的代码

让批处理被wsh解析的代码

获取外网IP地址的批处理代码

将文件夹变为磁盘的批处理

dos下删除文件夹和文件的方法

批量列出所有文件名的批处理

批处理创建完全,只读共享文件夹的批处理代码

精品推荐
分类导航