美文网首页
Windows下tomcat进程管理

Windows下tomcat进程管理

作者: 我的头好疼 | 来源:发表于2017-01-20 16:11 被阅读0次

    在windows下使用tomcat有时候很糟心,因为使用tomcat下自带的批处理脚本很慢,如果不上热部署,那么改一点重启一点,非常糟心。当然,还是建议上热部署。
    下面是之前开发的过程中找到的一个极好的办法。适用情况tomcat8,端口8080(端口在脚本可以改)。当然,建议安装tomcat的时候选择exe的安装,一方面,够简单,而且直接会把环境变量添加到windows下,免去了配置的麻烦;另一方面,用我下面的脚本会非常方便,直接杀死tomcat进程,启动关闭再也不用等了。哈哈哈哈哈哈....

    • 关闭tomcat进程
    
    @echo off
    REM ________________________________获取管理员权限________________________________
    
    >nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
    REM 判断是否具有管理员权限
    if '%errorlevel%' NEQ '0' (
    REM 若没有取管理员权限   
        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 __________________________________关闭tomcat8080端口______________________________
    
    REM 关闭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  关闭成功"
    pause>nul
    exit
    :2 
    echo "tomcat  关闭失败,请使用管理员权限运行"
    pause>nul
    exit
    
    
    • 启动tomcat进程
    @echo off
    
    REM ________________________________________________________________
    
    >nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
    REM 判断是否具有管理员权限
    if '%errorlevel%' NEQ '0' (
    REM 若没有取管理员权限   
        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相关dos命令
      查询所有的端口被占用的情况
    netstat  -ano
    

    查询端口号所对应的PID,以8080为例

    netstat -ano | findstr "8080"
    

    根据查询的PID找到对应的进程

    tasklist|findstr "5264"
    

    删除对应的PID(有的需要管理员权限)

    taskkill /f /pid "进程号"
    

    结束某个进程

    taskkill /f /t /im tor.exe
    

    相关文章

      网友评论

          本文标题:Windows下tomcat进程管理

          本文链接:https://www.haomeiwen.com/subject/owawbttx.html