BAT文件處理
- 列出盤中特定文件名的文件:
@echo off
dir C:\*.jpg /b/s>.\CDatejpg.txt dir C:\*.png /b/s>.\CDatepng.txt dir D:\*.jpg /b/s>.\DDatejpg.txt dir D:\*.png /b/s>.\DDatepng.txt dir E:\*.jpg /b/s>.\EDatejpg.txt dir E:\*.png /b/s>.\EDatepng.txt start /max CDatejpg.txt start /max CDatepng.txt start /max DDatejpg.txt start /max DDatepng.txt start /max EDatejpg.txt start /max EDatepng.txt
pause
注釋:
用dir和“/b /s”開關以路徑的形式,列出三個盤中的圖片文件,
用“>“開關寫入當前路徑 ”.\“ (默認當前,也可不用)。
用start命令加上最大化開關/max ,打開文本文件。
其中 *.jpg 可以換成其他后綴文件名,如 *.mp4,*.mp3 ,*.txt等。
同時, * 號也可為后,比如列出所有文件名叫book的文件,即 book.*。
如下形式亦可:
*A*.mp4(視頻文件名中有 A)
F*.txt(以F開頭的文本文件)
*.*(代指所有文件)
- 新建文件夾
rem 可直接生成路徑下文件夾 md D:\Alosys\Info rem 寫入路徑,可在當前窗口下調用 set path=%path%;D:\Alosys
rem 生成一個小系統 @echo off rem 可直接生成路徑下文件夾 @echo off rem 生成一個小系統 rem 寫入路徑 set path=%path%;D:\Alosys set pa=D:\Alosys rem 可直接生成路徑下文件夾 md D:\Alosys\Info echo @echo off>>%pa%\alo.bat echo :Alosys>>%pa%\alo.bat echo echo _____________>>%pa%\alo.bat echo echo successful!!>>%pa%\alo.bat echo echo _____________>>%pa%\alo.bat echo echo 1.ALl 2.tree >>%pa%\alo.bat echo set /p i=To input:>>%pa%\alo.bat echo if /i "%%i%%"=="1" goto allfile>>%pa%\alo.bat echo if /i "%%i%%"=="2" goto tree >>%pa%\alo.bat echo if /i "%%i%%"=="0" exit >>%pa%\alo.bat echo goto error>>%pa%\alo.bat echo :allfile>>%pa%\alo.bat echo dir C:\* /s/b^>.\CDate.txt>>%pa%\alo.bat echo dir D:\* /s/b^>.\DDate.txt>>%pa%\alo.bat echo start /max CDate.txt>>%pa%\alo.bat echo start /max DDate.txt>>%pa%\alo.bat echo exit>>%pa%\alo.bat echo :tree>>%pa%\alo.bat echo cd..^&cd..^&tree^> CTree.txt>>%pa%\alo.bat echo cd /d D: ^&tree^>DTree.txt>>%pa%\alo.bat echo start /max CTree.txt>>%pa%\alo.bat echo start /max DTree.txt>>%pa%\alo.bat echo exit>>%pa%\alo.bat echo :eror>>%pa%\alo.bat echo goto Alosys>>%pa%\alo.bat start %pa% echo 成功生成。 chioce /t 3/d y/n >nul exit
-
批量移動文件
@echo off setlocal enableDelayedExpansion rem 生成txt文件,從而調用 dir *.jpg /s/b >patjpg.txt dir *.png /s/b >>patjpg.txt rem 生成文件夾 md .\圖片文件 rem For命令的運用,其后綴名可以改 for /f "delims=. tokens=1" %%i in (patjpg.txt) do move "%%i.jpg" ".\圖片文件"&echo 正在移動…… echo 文件移動成功 pause
注釋:
對於開關delims,是以符號(.,。;:‘“#@!等)為開關,若是文件名中有此符號,則會出錯。
對於開關tokens,是以前一個開關所划分的節數來取值,如,1,5,1-5,2-3等,可靈活運用。