windows bat批处理判断电脑服务是否运行的问题

2022-11-13 10:11:46 判断 运行 批处理

我用来判断我的mysql是否运行:

在这里插入图片描述

代码:

set srvname="Mysql57" 
sc query|find %srvname% && net stop %srvname% && pause || net start %srvname% && pause

结果:
当他没运行时:

在这里插入图片描述

当他运行时:

在这里插入图片描述

Bat命令学习-批处理中的&、&&、|、||、>、>>符号
& 顺序执行多条命令,而不管命令是否执行成功
例:copy nul 5.txt & echo 666 >>5.txt & more 5.txt
创建5.txt文档,向5.txt文档中写入内容“666”,输出5.txt的内容。

&& 顺序执行多条命令,当碰到执行出错的命令后将不执行后面的命令

|| 顺序执行多条命令,当碰到执行正确的命令后将不执行后面的命令(即:只有前面命令执行错误时才执行后面命令)

| 管道命令 前一个命令的执行结果输出到后一个命令 如:help|more

清除文件中原有的内容后再写入

追加内容到文件末尾,而不会清除原有的内容主要将本来显示在屏幕上的内容输出到指定文件中指定文件如果不存在,则自动生成该文件

powershell判断服务是否启动

$a = Get-Service | Where-Object {$_.Name -eq "mysql"} | Where-Object {$_.Status -eq "running"};if($a -eq ""){echo "service has running"}else{echo "service is running";Stop-Service Mysql;};pause;

有时还需要使用管理员权限运行:

Start-Process powershell -Verb runAs;

到此这篇关于windows bat批处理判断电脑服务是否运行的文章就介绍到这了,更多相关windows bat批处理内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

相关文章