Windows下tomcat進(jìn)程管理

在windows下使用tomcat有時候很糟心,因為使用tomcat下自帶的批處理腳本很慢,如果不上熱部署,那么改一點重啟一點,非常糟心。當(dāng)然,還是建議上熱部署。
下面是之前開發(fā)的過程中找到的一個極好的辦法。適用情況tomcat8,端口8080(端口在腳本可以改)。當(dāng)然,建議安裝tomcat的時候選擇exe的安裝,一方面,夠簡單,而且直接會把環(huán)境變量添加到windows下,免去了配置的麻煩;另一方面,用我下面的腳本會非常方便,直接殺死tomcat進(jìn)程,啟動關(guān)閉再也不用等了。哈哈哈哈哈哈....

  • 關(guān)閉tomcat進(jìn)程

@echo off
REM ________________________________獲取管理員權(quán)限________________________________

>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
REM 判斷是否具有管理員權(quán)限
if '%errorlevel%' NEQ '0' (
REM 若沒有取管理員權(quán)限   
    goto UACPrompt

) else ( goto gotAdmin )

:UACPrompt

    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"

    echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"

    "%temp%\getadmin.vbs"

    exit /B

:gotAdmin

    if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )

    pushd "%CD%"

    CD /D "%~dp0"

REM __________________________________關(guān)閉tomcat8080端口______________________________

REM 關(guān)閉tomcat的8080端口
setlocal enabledelayedexpansion
for /f "tokens=5 delims= " %%a in ('netstat -aon ^| findstr "8080"') do (
    set a=%%a
   
)

taskkill /pid !a! /f && goto 1 || goto 2
:1 
echo "tomcat  關(guān)閉成功"
pause>nul
exit
:2 
echo "tomcat  關(guān)閉失敗,請使用管理員權(quán)限運行"
pause>nul
exit

  • 啟動tomcat進(jìn)程
@echo off

REM ________________________________________________________________

>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
REM 判斷是否具有管理員權(quán)限
if '%errorlevel%' NEQ '0' (
REM 若沒有取管理員權(quán)限   
    goto UACPrompt

) else ( goto gotAdmin )

:UACPrompt

    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"

    echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"

    "%temp%\getadmin.vbs"

    exit /B

:gotAdmin

    if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )

    pushd "%CD%"

    CD /D "%~dp0"

REM ________________________________________________________________

net start tomcat8

pause & exit

  • 附上windows相關(guān)dos命令
    查詢所有的端口被占用的情況
netstat  -ano

查詢端口號所對應(yīng)的PID,以8080為例

netstat -ano | findstr "8080"

根據(jù)查詢的PID找到對應(yīng)的進(jìn)程

tasklist|findstr "5264"

刪除對應(yīng)的PID(有的需要管理員權(quán)限)

taskkill /f /pid "進(jìn)程號"

結(jié)束某個進(jìn)程

taskkill /f /t /im tor.exe
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容