常用 bat 批处理脚本

最简单的例子

@echo off
echo \"hello world!\"
pause

常见的bat命令

1、REM 和 :: 给程序加上注释
2、ECHO 和 @ echo会显示运行的内容,加@则不会在运行框中显示运行内容(会继续运行,只是不会显示)。
3、PAUSE 暂停
4、ERRORLEVEL 命令运行结束,单独一行输入echo %errorlevel%会显示运行是否成功(成功0,失败1)
5、TITLE 设置cmd窗口的标题,格式为title name#
6、COLOR 改变窗口的颜色,格式为color 02
7、mode 配置系统设备 配置系统设备,比如mode con cols=100 lines=40,意思为设置窗口的宽和高
8、GOTO 和 : 跳转,用:XX构筑一个标记,用goto XX跳转到XX标记处
9、FIND 在文件中搜索字符串
10、START 批处理调用外部程序的命令(不理会外部运行状况,等到外部命令运行后才能继续运行),格式为start xxx(路径名)
11、assoc 和 ftype 文件关联(目前没发现有什么用)
12、pushd 和 popd 切换当前目录(用于不确定文件夹的情况,dos编程常用)
13、CALL 在批处理的过程中调用另一个批处理,当另一个批处理执行完了后回调自身
14、shift 更改批处理文件中可替换参数的位置
15、IF 判断,回头详细研究
16、setlocal 与 变量延迟
17、ATTRIB 显示或更改文件属性

:: 删除文件
del /f /s /q D:\Temp\*.*

:: 删除指定扩展名
if exist "*.lib" del *.lib

:: 删除整个目录
rd /s /q D:\Temp

:: 创建目录
md D:\Temp

常用特殊符号

1、@命令行回显屏蔽符
2、%批处理变量引导符
3、> 重定向符
4、>>重定向符
5、<、>、<& 重定向符
6、|命令管道符
7、^转义字符
8、组合命令
9、& 组合命令
10、||组合命令
11、\”\”字符串界定符
12、, 逗号
13、; 分号
14、() 括号
15、! 感叹号
16、批处理中可能会见到的其它特殊标记符

删除目录指定时间之前的旧文件

/d:-7 表示7天前的文件

Forfiles /p D:\temp /s /d -7 /m *.* /c "cmd /c del /q /f @path"

循环的用法

@echo off
for  %%I in (A,B,C) do echo %%I
pause

搜索当前目录下所有的文本文件

@echo off
for %%i in (*.txt) do echo "%%i"
pause

文件中遍历每行

for /f "eol=/delims=" %%b in (1.txt) do (
echo %%b
)

一个带选择功能的bat模板

@echo off

echo 1.function 1
echo 2.function 2
echo 3.function 3
echo.&echo.
set /p a=input choice:
if "%a%"=="1" Goto function1
if "%a%"=="2" Goto function2
if "%a%"=="3" Goto function3

:function1
echo 1
goto end

:function2
echo 2
goto end

:function3
echo 3
goto end

:end
echo complete

https://www.jianshu.com/p/75e87b188c54
https://blog.csdn.net/u013514928/article/details/79629937

248 total views, 2 views today

Revisions

Comments are closed.