最近在家闲来无事,就学了批处理命令。总的来说批处理命令据听说虽然用的很少,但是在写代码上还是很有帮助的。一些编程语言(如C语言,python等)可以调用批处理命令来实现更多功能。废话不多说,开始今天的正题:文件分离器。
文件分离器的使用背景是这样的:有一天,我想要重新装系统。众所周知,重装系统需要备份文件的。但是电脑里的文件夹太多了,文件分布在这些文件夹里太乱太杂以至于我还要把文件夹一个个地打开看看有没有需要复制粘贴到U盘的文件(图片和文档居多)。以下就是我以前重装系统前的备份工作。
因此我寻思着要是有个能分离提取各种各样的文件并把提取到的文件拷贝到U盘里的脚本代码。于是我花了一上午的时间终于设计出来了 。代码如下:
@echo off
rem ---------------------------主体-------------------------------
:start
echo [a:mp3][b:mp4][c:doc][d:docx][e:xlsx][f:xls][g:txt]
echo [h:bmp][i:dwg][j:jpg][k:wmv][l:zip][m:rar][n:jpeg]
echo [o:png][p:pdf][q:ppt][r:pptx][s:java][t:xlog][u:html]
choice /c abcdefghijklmnopqrstu /n /m 请选择对应的操作:
if %errorlevel% == 21 goto html
if %errorlevel% == 20 goto xlog
if %errorlevel% == 19 goto java
if %errorlevel% == 18 goto pptx
if %errorlevel% == 17 goto ppt
if %errorlevel% == 16 goto pdf
if %errorlevel% == 15 goto png
if %errorlevel% == 14 goto jpeg
if %errorlevel% == 13 goto rar
if %errorlevel% == 12 goto zip
if %errorlevel% == 11 goto wmv
if %errorlevel% == 10 goto jpg
if %errorlevel% == 9 goto dwg
if %errorlevel% == 8 goto bmp
if %errorlevel% == 7 goto txt
if %errorlevel% == 6 goto xls
if %errorlevel% == 5 goto xlsx
if %errorlevel% == 4 goto docx
if %errorlevel% == 3 goto doc
if %errorlevel% == 2 goto mp4
if %errorlevel% == 1 goto mp3
pause
rem -----------------------------html代码段------------------------
:html
set /p source = 请输入文件路径名(可以将文件夹拖拽至该命令窗口):
mkdir C:\seperate\html
for /R %source% %%v in (*.html) do copy %%v C:\seperate\html\*.html
start C:\seperate\html
choice /c yn /n /m 是否保留已复制的文件(y/n):
if %errorlevel% == 2 del C:\seperate\html\*.html
if %errorlevel% == 1 echo done
pause
goto start
rem -----------------------------xlog代码段------------------------
:xlog
set /p source = 请输入文件路径名(可以将文件夹拖拽至该命令窗口):
mkdir C:\seperate\xlog
for /R %source% %%v in (*.xlog) do copy %%v C:\seperate\xlog\*.xlog
start C:\seperate\xlog
choice /c yn /n /m 是否保留已复制的文件(y/n):
if %errorlevel% == 2 del C:\seperate\xlog\*.xlog
if %errorlevel% == 1 echo done
pause
goto start
rem -----------------------------java代码段------------------------
:java
set /p source = 请输入文件路径名(可以将文件夹拖拽至该命令窗口):
mkdir C:\seperate\java
for /R %source% %%v in (*.java) do copy %%v C:\s