1、for循环
dos执行for循环,如果写到批处理文件中执行,变量之前的%需要改为%%,命令前加@可以避免打印太多信息。
for /参数 %变量 in (集) do 命令
命令参数有4种D L R F
/d 参数是指定仅对目录而不是文件执行的for命令。
/l for /L %%变量 in (起始值,每次增值,结束时的比较值) do 命令
/r 之后加路径,指包含它之下的整个目录树(相当于DOS命令tree里的范围)中的所有目录,如果仅为一个英文句点 . ,是指当前路径下的目录树,如果省略了路径则特指当前目录,而之后的in (集)则相当于与前面每个目录相配的文件集。
/f将会打开(集)里的文件
for /r 目录名 %变量 in (结果集) do xxx命令
for /r E:\desktop\VPR\ %i in (*2020*) do move "%i" E:\desktop\aa\202012
2、rename
ren 完整路径文件名(文件夹名)\ *文件原后缀名 *文件新后缀名
ren *.csv *.end
3、控制台打印信息,并通过获取控制台输入参数,进行不同操作。
代码示例如下:
@echo off
::打印当前路径
::set pa=%cd%
::echo %pa%
:main
echo.
echo -----------excel文件处理--------------
echo.
echo 1-操作1
echo 2-操作2
echo q-退出
echo.
set /p choice="请选择:"
if %choice%==1 goto opr1
if %choice%==2 goto opr2
if %choice%==q (exit) else (输入错误,请重新选择!&goto main)
::操作1
:opr1
echo opr1
::做操作
goto pause
:opr2
echo opr2
::执行操作2逻辑
goto pause
:pause
pause
代码示例部分说明(自己的理解):
a、符号“::”代表单行注释。
b、符号“:”代表后边一段代码的一个标记(感觉有点类似于定义一段函数),可以通过goto跳转到标记处执行后边的代码。
c、代码 set /p choice="请选择:" , 标识设置变量choice,并等待控制台输入。
d、@echo off,代表无需每执行一行代码就打印一个信息。
4、m3u8通过dos命令转换为mp4
copy /b 1+2+3.ts xx.mp4