使用命令行启动服务

转载自:http://zhidao.baidu.com/question/170804787.html

使用命令行启动服务

在cmd下可有两种方法打开,net和sc,net用于打开没有被禁用的服务,语法是:

netstart服务名启动netstart服务名

停止netstop服务名

netstop服务名

用sc可打开被禁用的服务,语法是:

scconfig服务名start=demand//手动

sccondig服务名start=auto//自动

scconfig服务名start=disabled//禁用

scstart服务名

scstop服务名

注:1)服务名不一定是你在服务面板看到的那个名,例如,你要打开被禁用的telnet服务,scconfigtelnetstart=auto,报错:[SC]OpenServiceFAILED1060,因为telnet的服务名不是telnet而是tlntsvr,scconfigtlntsvrstart=auto就OK了,在服务面板里查看telnet属性,从可执行文件的路径里可看到服务程序名,即命令中的服务名。2)start=后面有空格,少了就有错

sc.exe命令功能列表:注:以下命令中。=号后面都有一个空格,=号前面没有空格!

1.更改服务的启动状态(这是比较有用的一个功能)

2.删除服务(除非对自己电脑的软、硬件所需的服务比较清楚,否则不建议删除任何系统服务,特别是基础服务)

3.停止或启动服务(功能上类似于netstop/start,但速度更快且能停止的服务更多)

具体的命令格式如下:

修改服务启动类型的命令行格式为(特别注意start=后面有一个空格)

scconfig服务名称start=demand(设置服务为手动启动)

scconfig服务名称start=disabled(设置服务为禁用)

停止/启动服务的命令行格式为

scstop/start服务名称

注意:平时常接触的都是服务的显示名称,而以上所指是服务名称,都可以在控制面板->管理工具->服务里面,双击对应的服务来查询。

先举例说明一下具体的设置方法:

如设置远程注册表服务为手动其格式为

scconfigRemoteRegistrystart=demand

设为禁用的格式为:

scconfigRemoteRegistrystart=disabled

停止服务则格式为:

scstopRemoteRegistry

首先把自己所需设置的服务名称查到之后,按照上面的格式做成批处理文件,重装系统之后只要运行批处理文件即可。

以下是我的设置,以XpSp2为蓝本,可比对所用的系统进行增删和修改。注:未加入XpSp2的自动更新、安全中心、防火墙。

scconfigAlerterstart=demand

scconfigTrkWksstart=demand

scconfighelpsvcstart=demand

scconfigpolicyAgentstart=demand

scconfigdmserverstart=demand

scconfigWmdmpmSnstart=demand

scconfigSpoolerstart=demand

scconfigRemoteRegistrystart=demand

scconfigNtmsSvcstart=demand

scconfigseclogonstart=demand

scconfigSchedulestart=demand

scconfigWebClientstart=demand

scconfigW32Timestart=demand

scconfigWZCSVCstart=demand

scconfigERSvcstart=demand

scconfigThemesstart=demand

scconfigFastUserSwitchingCompatibilitystart=disabled

scconfigMessengerstart=disabled

scconfigprotectedStoragestart=disabled

scconfigSSDpSRVstart=disabled

scconfigTermServicestart=disabled

scconfigShellHWDetectionstart=disabled

如果需要立即关闭服务也可把以下代码跟在上面的代码之后

scstopW32Time

scstopShellHWDetection

scstopTrkWks

scstophelpsvc

scstopdmserver

scstoppolicyAgent

scstopSpooler

scstopRemoteRegistry

scstopseclogon

scstopSchedule

scstopWZCSVC

scstopERSvc

scstopThemes

scstopFastUserSwitchingCompatibility

scstopprotectedStorage

scstopSSDpSRV

scstopWebClient

最后把修改好之后的代码存为services.cmd,在以后进行服务设置时,直接运行事先保存好的批处理文件就可以做到事半功倍了。

看到这里,使用Win2000的朋友也不必失望,sc.exe这个命令行工具对Win2000同样适用,可从装有WinXp或者Win2003的机器里面拷贝sc.exe文件,与保存好的批处理文件放在一起,然后执行批处理文件即可。

对注册表比较熟悉的朋友可能会想到用注册表来设置服务的启动类型,这也是一种可行的方法,本身却有着内在不足。原因是服务启动类型在注册表中对应的键值较长且分散,进行整理不方便直观且易错漏,所以这种方法比较适用于无人值守的安装时使用。

使用案例:

在命令行下启动自动更新服务:

C:\>scconfigwuauservstart=auto

[SC]ChangeServiceConfigSUCCESS

C:\>scstartwuauserv

SERVICE_NAME:wuauserv

TYPE:20WIN32_SHARE_PROCESS

STATE:2START_PENDING

(NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)

WIN32_EXIT_CODE:0(0x0)

SERVICE_EXIT_CODE:0(0x0)

CHECKPOINT:0x0

WAIT_HINT:0x7d0

PID:1156

FLAGS:

C:\>

使用命令行启动服务

在cmd下可有两种方法打开,net和sc,net用于打开没有被禁用的服务,语法是:

netstart服务名启动netstart服务名

停止netstop服务名

netstop服务名

用sc可打开被禁用的服务,语法是:

scconfig服务名start=demand//手动

sccondig服务名start=auto//自动

scconfig服务名start=disabled//禁用

scstart服务名

scstop服务名

注:1)服务名不一定是你在服务面板看到的那个名,例如,你要打开被禁用的telnet服务,scconfigtelnetstart=auto,报错:[SC]OpenServiceFAILED1060,因为telnet的服务名不是telnet而是tlntsvr,scconfigtlntsvrstart=auto就OK了,在服务面板里查看telnet属性,从可执行文件的路径里可看到服务程序名,即命令中的服务名。2)start=后面有空格,少了就有错

sc.exe命令功能列表:注:以下命令中。=号后面都有一个空格,=号前面没有空格!

1.更改服务的启动状态(这是比较有用的一个功能)

2.删除服务(除非对自己电脑的软、硬件所需的服务比较清楚,否则不建议删除任何系统服务,特别是基础服务)

3.停止或启动服务(功能上类似于netstop/start,但速度更快且能停止的服务更多)

具体的命令格式如下:

修改服务启动类型的命令行格式为(特别注意start=后面有一个空格)

scconfig服务名称start=demand(设置服务为手动启动)

scconfig服务名称start=disabled(设置服务为禁用)

停止/启动服务的命令行格式为

scstop/start服务名称

注意:平时常接触的都是服务的显示名称,而以上所指是服务名称,都可以在控制面板->管理工具->服务里面,双击对应的服务来查询。

先举例说明一下具体的设置方法:

如设置远程注册表服务为手动其格式为

scconfigRemoteRegistrystart=demand

设为禁用的格式为:

scconfigRemoteRegistrystart=disabled

停止服务则格式为:

scstopRemoteRegistry

首先把自己所需设置的服务名称查到之后,按照上面的格式做成批处理文件,重装系统之后只要运行批处理文件即可。

以下是我的设置,以XpSp2为蓝本,可比对所用的系统进行增删和修改。注:未加入XpSp2的自动更新、安全中心、防火墙。

scconfigAlerterstart=demand

scconfigTrkWksstart=demand

scconfighelpsvcstart=demand

scconfigpolicyAgentstart=demand

scconfigdmserverstart=demand

scconfigWmdmpmSnstart=demand

scconfigSpoolerstart=demand

scconfigRemoteRegistrystart=demand

scconfigNtmsSvcstart=demand

scconfigseclogonstart=demand

scconfigSchedulestart=demand

scconfigWebClientstart=demand

scconfigW32Timestart=demand

scconfigWZCSVCstart=demand

scconfigERSvcstart=demand

scconfigThemesstart=demand

scconfigFastUserSwitchingCompatibilitystart=disabled

scconfigMessengerstart=disabled

scconfigprotectedStoragestart=disabled

scconfigSSDpSRVstart=disabled

scconfigTermServicestart=disabled

scconfigShellHWDetectionstart=disabled

如果需要立即关闭服务也可把以下代码跟在上面的代码之后

scstopW32Time

scstopShellHWDetection

scstopTrkWks

scstophelpsvc

scstopdmserver

scstoppolicyAgent

scstopSpooler

scstopRemoteRegistry

scstopseclogon

scstopSchedule

scstopWZCSVC

scstopERSvc

scstopThemes

scstopFastUserSwitchingCompatibility

scstopprotectedStorage

scstopSSDpSRV

scstopWebClient

最后把修改好之后的代码存为services.cmd,在以后进行服务设置时,直接运行事先保存好的批处理文件就可以做到事半功倍了。

看到这里,使用Win2000的朋友也不必失望,sc.exe这个命令行工具对Win2000同样适用,可从装有WinXp或者Win2003的机器里面拷贝sc.exe文件,与保存好的批处理文件放在一起,然后执行批处理文件即可。

对注册表比较熟悉的朋友可能会想到用注册表来设置服务的启动类型,这也是一种可行的方法,本身却有着内在不足。原因是服务启动类型在注册表中对应的键值较长且分散,进行整理不方便直观且易错漏,所以这种方法比较适用于无人值守的安装时使用。

使用案例:

在命令行下启动自动更新服务:

C:\>scconfigwuauservstart=auto

[SC]ChangeServiceConfigSUCCESS

C:\>scstartwuauserv

SERVICE_NAME:wuauserv

TYPE:20WIN32_SHARE_PROCESS

STATE:2START_PENDING

(NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)

WIN32_EXIT_CODE:0(0x0)

SERVICE_EXIT_CODE:0(0x0)

CHECKPOINT:0x0

WAIT_HINT:0x7d0

PID:1156

FLAGS:

C:\

相关推荐