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
您可能感興趣的文章


閱讀排行
本欄相關
- 01-10DOS下查看硬盤分區(qū)該使用什么命令
- 01-10使用批處理實現(xiàn)軟件的自動安裝以安
- 01-10后臺運行bat定時器程序示例分享
- 01-10通過批處理修改DNS的代碼(推薦)
- 01-10dota2服務器ping測試腳本分享
- 01-10再談DOS批處理下格式化日期字符串的
- 01-10windows使用批處理發(fā)布web到tomcat并啟動
- 01-10win7怎么設定關閉顯示器時間
- 01-10屏蔽up鍵禁止游戲運行腳本分享
- 01-10win7創(chuàng)建wifi熱點腳本分享
隨機閱讀
- 01-10SublimeText編譯C開發(fā)環(huán)境設置
- 04-02jquery與jsp,用jquery
- 01-11ajax實現(xiàn)頁面的局部加載
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 01-10delphi制作wav文件的方法
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 01-10C#中split用法實例總結