码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • windows bat批处理文件,实现某个软件的重启


    bat批处理实现软件重启功能

      • windows环境
      • 需要明确的概念
        • 按照启动文件xxx.exe去定位某个程序的Pid
        • 根据pid杀死某个进程
        • 根据exe文件启动某个软件
      • bat示例,杀死软件进程并重启

    windows环境

    我这里用的是win10企业版,在基础功能上和家庭版区别不大

    需要明确的概念

    按照启动文件xxx.exe去定位某个程序的Pid

    软件的icon名称和实际运行进程中的imagename可能是不一样的,我这里来举个例子,可以看到我的右下角这个软件叫Cisco AnyConnect
    在这里插入图片描述

    但是在任务管理器中,找不到这个名称的软件,又换成了另一个名称,前缀一样,后缀不一样。所以我这里统一找的办法就是,右键这个软件,点开它的properties
    在这里插入图片描述
    在这里插入图片描述

    再点开details查看最下面的Original filename字段值,可以看到叫vpnui.exe
    在这里插入图片描述

    我们拿着这个名称到cmd中去执行命令

    tasklist /fi "imagename eq vpnui.exe
    
    • 1

    可以看到能找到以下的进程pid
    在这里插入图片描述

    根据pid杀死某个进程

    这里的18880就是对应刚刚查出来的PID

    taskkill /pid 18880  -t  -f
    
    • 1

    根据exe文件启动某个软件

    start命令后面的就是你的exe启动文件路径

    start C:\Users\RAY\DiskD\WorkSoftwares\cisco connect\vpnui.exe
    
    • 1

    bat示例,杀死软件进程并重启

    这里我用px这个软件做为演示,px这个软件启动后会有3个进程,所以我这里用了数组保存这三个进程的pid,而当我kill掉其中一个pid的时候,其余进程也会随之被kill掉,所以我这里只需要kill掉obj[0]进程就可以了,大家可以适当根据自己的需求做调整

    restartpx.bat

    @echo off
    setlocal enabledelayedexpansion
    set /a objIndex=0
    set obj[0]=0
    set obj[1]=0
    set obj[2]=0
    
    for /f "skip=3 tokens=2 delims= " %%a in ('tasklist /fi "imagename eq px.exe"') do (
    	echo echo ------!objIndex!------
    	set obj[!objIndex!]=%%a
    	set /a objIndex+=1
    )
    
    
    if (%obj[0]%)==(0) (
    	echo px progress isn't running.
    	start C:\Users\RAY\DiskD\WorkSoftwares\px-v0.8.3-windows\px.exe
    )else (
    	echo px is running.
    	echo kill px progress......;
    	taskkill /pid %obj[0]%  -t  -f
    
    	timeout /t 1
    	echo px has been killed.
    	echo start px ......
    	timeout /t 2
    	start C:\Users\RAY\DiskD\WorkSoftwares\px-v0.8.3-windows\px.exe
    )
    
    echo px has been restarted.
    
    timeout /t 3
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
  • 相关阅读:
    【Python高级编程】pickle`文件处理:序列化与反序列化
    设计模式学习笔记(二)工厂模式、模板模式和策略模式的混合使用
    基于stm32单片机的按键智能电子密码锁
    基础算法---差分
    什么是yum源?如何对其进行配置?
    列表以及字典的练习
    新风机小助手-风压变速器
    前端获取文件后缀名
    NVIDIA TX2 与 维特 IMU CAN通信
    tcp协议讲解
  • 原文地址:https://blog.csdn.net/weixin_44388689/article/details/128092054
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号