[TOC]
0x00 基础语法
描述:SC 命令是用于与服务控制管理器通信的命令行程序.
语法参数:
[TOC]
描述:SC 命令是用于与服务控制管理器通信的命令行程序.
语法参数: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
33
34
35
36sc <server> [command] [service name] <option1> <option2> #选项 <server> 的格式为 "\\ServerName"
sc <server> config [service name] <option1> <option2>
#sc二级命令
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------枚举服务的依存关系。
Tips : 在 PowerShell 中sc 是 cmdlet Set-Content 的别名,应该这样使用加上 .exe
才能正常使用。
描述: 创建一个自启/手动开启服务并写入注册表之中;1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17用法:sc <server> create [service name] [binPath= ] <option1> <option2>...
#注意: 选项名称包括等号。等号和值之间需要一个空格。
type= <own|share|interact|kernel|filesys|rec|userown|usershare>
(默认 = own)
start= <boot|system|auto|demand|disabled|delayed-auto>
(默认 = demand)
error= <normal|severe|critical|ignore>
(默认 = normal)
binPath= <.exe 文件的 BinaryPathName>
group= <LoadOrderGroup>
tag= <yes|no>
depend= <依存关系(以 / (斜杠)分隔)>
obj= <AccountName|ObjectName>
(默认= LocalSystem)
DisplayName= <显示名称>
password= <密码>
实例案例:1
2
3
4
5
6
7
8
9# 安装服务:NewService为创建的服务名,binPath后面是运行exe文件的所在路径
sc create NewService binPath="C:\Debug\win32srvDemo.exe"
# 服务自动开启某个程序(type共享,start启动方式自动,displayname服务显示名称描述)
sc create NewService binPath= "D:\Debug\start1.bat -config 1.ini" type=share start= "auto" displayname= "BWJXServices"
# Prometheus Metrics Windows Nodes Services
sc create prometheus_windows_exporter_service binPath= "d:\pro\windows_exporter-0.16.0-amd64.exe --config.file=d:\pro\config.yml" start= "auto" displayname= "prometheus_windows_exporter_service"
描述:配置服务启动方式或者禁用服务,它有三种状态AUTO/DEMAND/DISABLED;
基础案例:1
2
3
4
5
6
7
8
9
10
11#设置服务的集中方式
sc config 服务名 start= AUTO (自动)
sc config 服务名 start= DEMAND (手动)
sc config 服务名 start= DISABLED (禁用)
#将智能卡服务禁用
sc config SCardSvr start= disabled
sc config SCPolicySvc start= disabled
#在XP系统中开机便会自动启动:
sc config test3 start=AUTO
描述:用来开启已存在的服务
用法参数:1
2
3
4
5```
**基础案例:**
```bash
sc start NewService
描述:用来停止已开启的服务
用法参数:1
2
3
4
5```
**基础案例:**
```bash
sc stop NewService
描述:用来删除已存在的服务
基础语法:1
sc delete NewService
基础案例:1
sc delete "Service Name"
描述:查询服务的配置信息 (dependencies 依赖)1
sc qc NewService
基础案例:1
2sc qc Spooler
sc qc upnphost
***WinService
服务时,再使用 “sc delete 服务器名称” 命令删除服务就出现“指定的服务已经标记为删除”的异常。问题原因:出现上述原因是运行删除服务项命令的时候,服务管理窗口未关闭引起的。
解决办法: 关闭服务管理窗口,重新删除、安装服务项即可。
你好看友,欢迎关注博主微信公众号哟! ❤
这将是我持续更新文章的动力源泉,谢谢支持!(๑′ᴗ‵๑)
温馨提示: 未解锁的用户不能粘贴复制文章内容哟!
方式1.请访问本博主的B站【WeiyiGeek】首页关注UP主,
将自动随机获取解锁验证码。
Method 2.Please visit 【My Twitter】. There is an article verification code in the homepage.
方式3.扫一扫下方二维码,关注本站官方公众号
回复:验证码
将获取解锁(有效期7天)本站所有技术文章哟!
@WeiyiGeek - 为了能到远方,脚下的每一步都不能少
欢迎各位志同道合的朋友一起学习交流,如文章有误请在下方留下您宝贵的经验知识,个人邮箱地址【master#weiyigeek.top】
或者个人公众号【WeiyiGeek】
联系我。
更多文章来源于【WeiyiGeek Blog - 为了能到远方,脚下的每一步都不能少】, 个人首页地址( https://weiyigeek.top )
专栏书写不易,如果您觉得这个专栏还不错的,请给这篇专栏 【点个赞、投个币、收个藏、关个注、转个发、赞个助】,这将对我的肯定,我将持续整理发布更多优质原创文章!。
最后更新时间:
文章原始路径:_posts/系统运维/Windows/常用命令/系统高级类命令/sc命令解析与实例使用.md
转载注明出处,原文地址:https://blog.weiyigeek.top/2019/5-29-245.html
本站文章内容遵循 知识共享 署名 - 非商业性 - 相同方式共享 4.0 国际协议