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等,可灵活运用。