bat批处理脚本语法学习
1.打印输出:echo
2.删除文件夹下文件:del /f /s /q 路径\*.*
3.删除文件夹(包含本层):rd /q /s 路径\
4.创建文件夹:md 路径
5.复制文件下所有内容到指定路径:Xcopy /y /e /k 原路径 指定路径
6.判断环境变量是否存在(空值默认视为不存在):if DEFINED 环境变量名称()else ()
7.设置环境变量:setx 环境变量名称 "%cd%" -m
8.bat脚本中执行其他脚本:call %cd%\copyFile.bat
9.退出:exit
10.暂停输入任意值:pause
11.以管理员身份执行:
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"
12.判断文件是否存在:
SET SourceFile=%cd%\bin\restartService.bat
if exist %SourceFile% (
) else (
)
copy %cd%\bin\restartService.bat "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp"
14.杀掉指定端口的进程
@echo off
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"
if DEFINED TOMCAT_HOME_QAF (
set obj[0]=35266
set obj[1]=35267
set port=0
set pid=0
echo ==================== 端口号查杀工具 ========================
for /f "usebackq delims== tokens=1-2" %%a in (`set obj`) do (
echo %%b
echo 开始查找端口号【!port!】所占用进程
for /f "tokens=5" %%m in ('netstat -aon ^| findstr ":%%b"') do (
set pid= %%m
if "!pid!"=="0" (
echo 端口号【!port!】没有占用
) else (
echo 端口号【!port!】相关进程以杀死
taskkill /f /pid %%m
)
)
set pid=0
)
)
exit
15.执行指定jar包:
start %TOMCAT_HOME_QAF%\jdk1.8.0_212\jre\bin\javaw.exe -jar %TOMCAT_HOME_QAF%\webapps\ftc-gateway\ftc-cloud-gateway-1.0.0-SNAPSHOT.jar
16.设置变量(=号前后不能有空格)
set "CATALINA_HOME=%cd%"
17.for循环查找指定文件夹下某类型文件
for /R %cd%\patchSql %%f in (*.sql) do (
)
18.for循环查找指定文件夹下某类型文件并判断指定文件夹下是否存在(%%~nxf代表当前循环的文件)
set sqlfile="%MYSQL_HOME_QAF%\sql"
for /R %cd%\patchSql %%f in (*.sql) do (
if not exist "%sqlfile%\%%~nxf" (
)
)
19.启动mysql
net start mysql
20.停止mysql
net stop mysql
21.bat命令mysql执行sql文件
set pas=123456
%cd%\bin\mysql.exe -h 127.0.0.1 -u root -P 33061 -p%pas% <%cd%\patchSql\1.sql
22.指定文件后追加内容
echo [WinMySQLadmin]>>my.ini
23.mysql免安装版执行命令(默认root密码为空):
net stop mysql
sc delete mysql
%cd%\bin\mysqld.exe --initialize-insecure
%cd%\bin\mysqld.exe --install MySQL
net start mysql
24.后台启动redis并指定别名
redis-server.exe --service-install redis.windows.conf --service-name redis6384 --loglevel verbose
redis-server --service-start --service-name redis6384
25.停止redis
redis-server --service-stop --service-name redis6384
redis-server --service-uninstall --service-name redis6384
因篇幅问题不能全部显示,请点此查看更多更全内容