Bat:Basic knowledge(同时运行多条命令,连接SqlServer执行sql,单个bat打开多个tomcat,cmd切换命令行编码,根据PID结束端口号)

1.Windows7环境下命令行一次运行多条命令

Windows7命令行(cmd)下,如果想一次运行多条命令可能用到的连接符个人了解到的有三个:&&,||和&。

aa && bb
means:执行aa,成功后再执行bb

ex:node a.js && node b.js

如果a.js运行失败则b.js不会再运行

aa || bb
means:先执行aa,若执行成功则不再执行bb,若失败则再执行bb

ex:node a.js || node b.js

如果a.js运行失败则b.js再运行,如果a.js运行成功则b.js不再运行

aa & bb
means:先执行aa再执行bb,无论aa是否成功
ex: node a.js & node b.js

先运行a.js运行,不管运行a.js文件是否报错,b.js接着运行

2.连接SqlServer执行sql

start osql -S 127.0.0.1 -U sa -P 123456 -i C:UserslenovoDesktopss.sql

3.单个bat打开多个tomcat

@echo off
start osql -S 127.0.0.1 -U sa -P 123456 -i E:lwsjsoftupdate.sql
start /d "E:lwsjsoftapache-tomcat-7.0.76-8044apache-tomcat-7.0.76-8044in" startup.bat
start /d "E:lwsjsoft
etworking-audit-monitor
etworking-audit-monitorin" startup.bat
start java -jar E:lwsjsoft
etworking-audit-monitoring-0.0.1-SNAPSHOT(5).jar
start java -jar E:lwsjsoft
etworking-permission-manager-0.0.1-SNAPSHOT.jar

4.切换命令行编码 

chcp   --查看当前编码   
chcp 65001   --切换成 UTF8  

 5.根据PID结束端口号

@echo off
setlocal enabledelayedexpansion
set /p port=请输入端口号:
for /f "tokens=1-5" %%a in ('netstat -ano ^| find ":%port%"') do (
    if "%%e%" == "" (
        set pid=%%d
    ) else (
        set pid=%%e
    )
    echo !pid!
    taskkill /f /pid !pid!
    goto :next
)
:next
echo ---------------------------
echo 重启服务
echo ---------------------------

 start java -jar D:impmyeclipseworkspace
etworking-audit-monitoring	arget
etworking-audit-monitoring-0.0.1-SNAPSHOT.jar

pause