找回密码
 立即注册
搜索
查看: 1909|回复: 9

[软件] win的service如何在命令行下自动判断start or stop(让程序自动

[复制链接]
     
发表于 2012-4-30 22:43 | 显示全部楼层 |阅读模式
标题看着挺难的,我解释一下
用老机子时ep,平常关闭print服务,打印时再打开,不过每次都窗口操作太繁琐了,所以想做bat
本人不是计算机专业的,只会最简单的命令
  1. sc start spooler
复制代码
打印之后向关闭服务呢,只好在建立另一个bat
  1. sc stop spooler
复制代码
换了新机子就不这样疼了,所以以上问题就不管了,可是又有了新问题(太ep的lz

用diskeeper这个磁盘整理软件(不愧是ms自带磁盘整理完整版,功能超全,还带自动整理,新版自动识别ssd)
问题就是每次抽取盒插入硬盘,dk都会开启盘上的自动整理,然后想退出硬盘都提示失败,停止diskeeper这个服务才行,然后手动再开启
所以lz的问题来了,如何写个命令自动判断服务处于start or stop,然后根据返回值自动选择操作

真是扭曲的lz呀
回复

使用道具 举报

头像被屏蔽
     
发表于 2012-4-30 22:59 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

发表于 2012-4-30 23:01 | 显示全部楼层
简单,不做磁盘整理

基本上是瞎折腾

非要折腾的话,去看sc query的帮助,其他的自己办吧

这东西在*nix下好折腾,Win32的bat嘛……
回复

使用道具 举报

     
 楼主| 发表于 2012-4-30 23:10 | 显示全部楼层
引用第1楼白左于2012-04-30 22:59发表的  :
win+r输入cmd /k sc/?
第二个就有:

用法:
        sc <server> [command] [service name] <option1> <option2>...
.......
是我没写清楚,标题已改正
我是想让程序自动判断状态,然后根据状态采取相应命令
回复

使用道具 举报

     
 楼主| 发表于 2012-4-30 23:14 | 显示全部楼层
引用第2楼鸡蛋灌饼于2012-04-30 23:01发表的  :
简单,不做磁盘整理

基本上是瞎折腾

非要折腾的话,去看sc query的帮助,其他的自己办吧
.......
sc query                - 枚举活动服务和驱动程序的状态
sc query eventlog       - 显示 eventlog 服务的状态
sc queryex eventlog     - 显示 eventlog 服务的扩展状态
sc query type= driver   - 仅枚举活动驱动程序
sc query type= service  - 仅枚举 Win32 服务
sc query state= all     - 枚举所有服务和驱动程序
sc query bufsize= 50    - 枚举缓冲区为 50 字节
sc query ri= 14         - 枚举时恢复索引 = 14
sc queryex group= ""    - 枚举不在组内的活动服务
sc query type= interact - 枚举所有不活动服务
sc query type= driver group= NDIS     - 枚举所有 NDIS 驱动程序
不懂呀,还是没有解决思路
回复

使用道具 举报

发表于 2012-5-1 01:16 | 显示全部楼层
你绕远了
diskeeper的话
打开diskeeper控制台-菜单栏-操作-配置diskeeper-diskeeper配置属性
属性-新卷检测 取消掉"在所有卷上启用自动碎片整理"这一项前的勾就可以了

当然,以后硬盘分区什么的有改动时,想要自动碎片整理新的卷的话要自己设置
回复

使用道具 举报

发表于 2012-5-1 17:15 | 显示全部楼层
思路短不懂从cmd获取值…
关了开,开了关

@echo off
sc query diskeeper >%temp%\\scstate.txt
find /i "RUNNING" %temp%\\scstate.txt
if %errorlevel% EQU 0 (
    sc stop diskeeper
) ELSE (
    sc start diskeeper
)
del %temp%\\scstate.txt
exit
回复

使用道具 举报

     
 楼主| 发表于 2012-5-1 18:10 | 显示全部楼层

回 6楼(tsukiya17) 的帖子

哦哦,ls厉害
%errorlevel%这啥意思
回复

使用道具 举报

发表于 2012-5-1 19:23 | 显示全部楼层
错误等级
成功返回0,错误一般为1
回复

使用道具 举报

     
发表于 2012-5-2 04:24 | 显示全部楼层
6l这个囧。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|Stage1st ( 沪ICP备13020230号-1|沪公网安备 31010702007642号 )

GMT+8, 2025-9-14 07:19 , Processed in 0.053451 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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