Windows下的SC命令参考

简介:
C:\tmp>sc /?
错误:  未知命令
描述:
        SC 是用于与服务控制管理器和服务进行通信的命令行程序。
用法:
        sc <server> [command] [service name] <option1> <option2>...
        选项 <server> 的格式为 "\\ServerName"
        键入 "sc [command]" 可以获得有关命令的进一步帮助
        命令:
          query-----------查询服务的状态,
                          或枚举服务类型的状态。
          queryex---------查询服务的扩展状态,
                          或枚举服务类型的状态。
          start-----------启动服务。
          pause-----------向服务发送 PAUSE 控制请求。
          interrogate-----向服务发送 INTERROGATE 控制请求。
          continue--------向服务发送 CONTINUE 控制请求。
          stop------------向服务发送 STOP 请求。
          config----------更改服务的配置(永久)。
          description-----更改服务的描述。
          failure---------更改服务失败时执行的操作。
          failureflag-----更改服务的失败操作标志。
          sidtype---------更改服务的服务 SID 类型。
          privs-----------更改服务的所需权限。
          qc--------------查询服务的配置信息。
          qdescription----查询服务的描述。
          qfailure--------查询失败时服务执行的操作。
          qfailureflag----查询服务的失败操作标志。
          qsidtype--------查询服务的服务 SID 类型。
          qprivs----------查询服务的所需权限。
          qtriggerinfo----查询服务的触发器参数。
          qpreferrednode--查询首选的服务 NUMA 节点。
          delete----------(从注册表)删除服务。
          create----------创建服务(将其添加到注册表)。
          control---------向服务发送控制。
          sdshow----------显示服务的安全描述符。
          sdset-----------设置服务的安全描述符。
          showsid---------显示相应于假定名称的 SID 字符串。
          triggerinfo-----配置服务的触发器参数。
          preferrednode---设置首选的服务 NUMA 节点。
          GetDisplayName--获取服务的 DisplayName
          GetKeyName------获取服务的 ServiceKeyName。
          EnumDepend------枚举服务的依存关系。
        下列命令不要求服务名称:
        sc <server> <command> <option>
          boot------------(ok | bad) 指示是否将上一次启动保存为
                          最近一次已知的正确启动配置
          Lock------------锁定服务数据库
          QueryLock-------查询 SCManager 数据库的 LockStatus
示例:
        sc start MyService
是否想参阅 QUERY 和 QUERYEX 命令的帮助? [ y | n ]:
y
QUERY 和 QUERYEX 选项:
        如果查询命令带服务名称,将返回
        该服务的状态。其他选项不适合这种
        情况。如果查询命令不带参数或
        带下列选项之一,将枚举此服务。
    type=    要枚举的服务的类型(driver, service, all)
             默认 = service)
    state=   要枚举的服务的状态 (inactive, all)
             (默认 = active)
    bufsize= 枚举缓冲区的大小(以字节计)
             (默认 = 4096)
    ri=      开始枚举的恢复索引号
             (默认 = 0)
    group=   要枚举的服务组
             (默认 = all groups)
语法示例
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 驱动程序
C:\tmp>

如果需要查看全部的服务:
可以使用  sc query state= all 

如果我想完成一个自动启动和关闭的oracle 脚本,可以通过如下步骤实现:
1)sc query state= all > sl.txt
2)findstr "DISPLAY_NAME" sl.txt > asl.txt
如下:
C:\tmp>findstr "DISPLAY_NAME"  sl.txt
DISPLAY_NAME: Adobe Acrobat Update Service
DISPLAY_NAME: Application Experience
DISPLAY_NAME: Application Layer Gateway Service
DISPLAY_NAME: AMD External Events Utility
DISPLAY_NAME: Avira Scheduler
DISPLAY_NAME: Avira Real-Time Protection
DISPLAY_NAME: Application Identity
DISPLAY_NAME: Application Information
DISPLAY_NAME: Application Management
DISPLAY_NAME: Windows Audio Endpoint Builder
DISPLAY_NAME: Windows Audio
。。。
3)findstr /i "oracle"  asl.txt > osl.txt
内容:
C:\tmp>findstr /i "oracle" asl.txt
DISPLAY_NAME: OracleDBConsoleorcl
DISPLAY_NAME: OracleJobSchedulerORCL
DISPLAY_NAME: OracleMTSRecoveryService
DISPLAY_NAME: OracleOraDb11g_home1ClrAgent
DISPLAY_NAME: OracleOraDb11g_home1TNSListener
DISPLAY_NAME: OracleServiceORCL
DISPLAY_NAME: Oracle ORCL VSS Writer Service
4)在vim中,把DISPLAY_NAME:替换成 net stop 或者net start就可以了:

C:\tmp>gvim osl.txt
C:\tmp>type  osl.txt
net stop  OracleDBConsoleorcl
net stop  OracleJobSchedulerORCL
net stop  OracleMTSRecoveryService
net stop  OracleOraDb11g_home1ClrAgent
net stop  OracleOraDb11g_home1TNSListener
net stop  OracleServiceORCL
net stop  Oracle ORCL VSS Writer Service
net start  OracleDBConsoleorcl
net start  OracleJobSchedulerORCL
net start  OracleMTSRecoveryService
net start  OracleOraDb11g_home1ClrAgent
net start  OracleOraDb11g_home1TNSListener
net start  OracleServiceORCL
net start  Oracle ORCL VSS Writer Service

本文转自博客园zhyiwww 的博客,原文链接:http://www.blogjava.net/zhyiwww/,如需转载请自行联系原博主。

目录
相关文章
|
16天前
|
存储 安全 数据库
适用于 Windows 的管理命令
以下命令可用于管理 Rational® Synergy。
|
28天前
|
人工智能 监控 安全
掌握Windows管理利器:WMI命令实战
本文介绍了Windows Management Instrumentation (WMI) 的基本概念和用途,通过多个实用的`wmic`命令示例,如获取CPU信息、查看操作系统详情、管理服务、检查磁盘空间等,展示了WMI在系统维护中的强大功能。适合IT专业人士学习和参考。
|
1月前
|
Windows
Windows系统命令dir使用详解
Windows系统命令dir使用详解
|
1月前
|
缓存 监控 网络协议
计算机网络的常用的网络通信命令(Windows)
本文介绍了网络技术中常用的命令,如ping用于检测网络连通性,ipconfig查看TCP/IP配置,netstat监控网络状态,arp显示和修改ARP缓存,at安排任务执行,tracert追踪路由,以及nbtstat获取NetBIOS信息。
30 1
|
2月前
|
监控 网络安全 Windows
Windows系统命令
Windows系统命令
|
2月前
|
监控 NoSQL Redis
redis-server --service-install redis.windows.conf --loglevel verbose 命令的作用是什么?
redis-server --service-install redis.windows.conf --loglevel verbose 命令的作用是什么?
100 3
|
2月前
|
存储 Web App开发 调度
Windows系统新手教程:常见操作命令帮你玩转电脑
Windows系统新手教程:常见操作命令帮你玩转电脑
114 5
|
2月前
|
Windows
7-3|windows删除目录下的所有文件的命令
7-3|windows删除目录下的所有文件的命令
|
2月前
|
Windows
windows 下面的 cmd命令
windows 下面的 cmd命令
|
3月前
|
Java Windows
【Azure Developer】Windows中通过pslist命令查看到Java进程和线程信息,但为什么和代码中打印出来的进程号不一致呢?
【Azure Developer】Windows中通过pslist命令查看到Java进程和线程信息,但为什么和代码中打印出来的进程号不一致呢?