吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 212|回复: 5
收起左侧

[经验求助] 这个bat脚本为啥不能正常使用呢

[复制链接]
小贱人点击就送 发表于 2024-10-7 22:38
42吾爱币
@echo off
for %%srv1 in (VMnetDHCP,VMware NAT Service) do (
:: 获取服务的当前状态
sc query %%srv1 | findstr /i "RUNNING" >nul
if errorlevel 1 (
    echo %%srv1 is not running. Starting the service...
    net start %%srv1
) else (
    echo %%srv1 is running. Stopping the service...
    net stop %%srv1
)
)

就是想检测以上两个服务没有运行就运行, 运行了就关闭,但是目前这种写法,服务并没有正常运行或者关闭

最佳答案

查看完整内容

%%srv1 换成%%s试试

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

平淡最真 发表于 2024-10-7 22:38
%%srv1  换成%%s试试
canyonlwt 发表于 2024-10-8 08:19
那你直接两句话,sc 启动服务,停止服务就得了呗,判断啥啊
小哲网络 发表于 2024-10-8 09:39
[Bash shell] 纯文本查看 复制代码
@echo off
for %%srv1 in ("VMnetDHCP", "VMware NAT Service") do (
    :: 获取服务的当前状态
    sc query "%%srv1" | findstr /i "RUNNING" >nul
    if errorlevel 1 (
        echo %%srv1 is not running. Starting the service...
        net start "%%srv1"
    ) else (
        echo %%srv1 is running. Stopping the service...
        net stop "%%srv1"
    )
)


试试,把bat拖进命令提示符运行,看是否有报错?如果有发报错,

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
小贱人点击就送 + 1 + 1 热心回复!

查看全部评分

baikunlun 发表于 2024-10-8 10:56
@4楼
我帮楼主试了下:
问题1:变量名是有限制的,不能搞那么多字母。
问题2:引号的问题。

[Bash shell] 纯文本查看 复制代码
@echo off
for %%s in ("VMnetDHCP", "VMware NAT Service") do (
    :: 获取服务的当前状态
    sc query %%s | findstr /i "RUNNING" >nul
    if errorlevel 1 (
        echo %%s is not running. Starting the service...
        net start %%s
    ) else (
        echo %%s is running. Stopping the service...
        net stop %%s
    )
)

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
小贱人点击就送 + 1 + 1 我很赞同!

查看全部评分

小哲网络 发表于 2024-10-8 11:47
baikunlun 发表于 2024-10-8 10:56
@4楼
我帮楼主试了下:
问题1:变量名是有限制的,不能搞那么多字母。

哦哦哦,原来如此,解决了就行。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-15 19:51

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表