关于windows的批处理以及命令知道的不多,请详解!此外能不能用批处理得到一个应用程序需要启动那些服务。
比如我并不知道Oracle需要启动那些服务,但是我想通过程序得到他需要的服务,并启动这些服务。请详解。...
比如我并不知道Oracle需要启动那些服务,但是我想通过程序得到他需要的服务,并启动这些服务。请详解。
展开
1个回答
展开全部
当我们的电脑安装了数据库服务(如,Oracle、SQLServer)或一些web服务(如IIS,tomcat)时,系统会添加很多服务(services)项。而这些服务往往是占用很大的系统资源的。如果在平时不用的时候一直处于启动状态是对系统资源的极大浪费。所以我们就通过“管理工具”中的“服务”将所有不必要的服务停止。但是每次用到的时候或不用的时候手工去启动和停止比较麻烦。所以我想到了用批理来操作。
下面介绍两种使用批处理操作来 设置、启动和停止服务的方法。
从Windows XP开始,其自带的DOS工具中加入了一个sc.exe(Service Control)和net.exe (C:\WINDOWS\system32)的文件,恰好可以对服务的启动类型以及服务的启动或者关闭等进行操作,再利用DOS的批处理优势,就可以把上面提到的操作进行简化。
方法 一:
sc.exe常用功能:
1、更改服务的启动状态.
2、删除服务(否则不建议删除任何系统服务,特别是基础服务 慎用)
3、停止或启动服务(功能上类似于net stop/start,但速度更快且能停止的服务更多)
具体的命令格式:
修改服务启动类型的命令行格式为(特别注意start=后面有一个空格)
sc config 服务名称 start= demand(设置服务为手动启动)
sc config 服务名称 start= disabled(设置服务为禁用)
停止/启动服务的命令行格式为
sc stop/start 服务名称
注意:服务名称:可以在控制面板->管理工具->服务里面,双击对应的服务显示名来查询。
例:
设置远程注册表服务为手动其格式为
sc config RemoteRegistry start= demand
设为禁用的格式为
sc config RemoteRegistry start= disabled
停止服务则格式为
sc stop RemoteRegistry
方法二:
使用net.exe功能启动或停止服务
启动/停止 服务的命令行格式为
net start / stop服务名称
例:
以启动和停止Oracle服务为例:由于Oracle服务非常占用系统资源,而且平时不怎么用Oracle数据库。所以我将其设为手动启动,然后每次用到Oracle时,使用批处理来启动一堆服务。
-- 开始Oracle的服务
@echo off
net start OracleMTSRecoveryService
net start OracleOraHome92Agent
net start OracleOraHome92TNSListener
net start OracleService数据库名
-- 停止Oracle的服务
@echo off
net stop OracleService数据库名
net stop OracleOraHome92TNSListener
net stop OracleOraHome92Agent
net stop OracleMTSRecoveryService
启动方法:
方法1.保存之后便可以直接通过双击文件即可启动或者关闭服务
方法2.设置环境变量
在环境变量中的系统变量中,在PATH后面添加批处理文件的路径,不要忘记用分号;和前面的环境变量隔开,然后直接在开始菜单中的运行中输入可执行相应的文件
环境变量的作用就是告诉系统在运行中输入信息的位置而已。
别的地方贴过来的。。。
现在baidu发个链接难死了
下面介绍两种使用批处理操作来 设置、启动和停止服务的方法。
从Windows XP开始,其自带的DOS工具中加入了一个sc.exe(Service Control)和net.exe (C:\WINDOWS\system32)的文件,恰好可以对服务的启动类型以及服务的启动或者关闭等进行操作,再利用DOS的批处理优势,就可以把上面提到的操作进行简化。
方法 一:
sc.exe常用功能:
1、更改服务的启动状态.
2、删除服务(否则不建议删除任何系统服务,特别是基础服务 慎用)
3、停止或启动服务(功能上类似于net stop/start,但速度更快且能停止的服务更多)
具体的命令格式:
修改服务启动类型的命令行格式为(特别注意start=后面有一个空格)
sc config 服务名称 start= demand(设置服务为手动启动)
sc config 服务名称 start= disabled(设置服务为禁用)
停止/启动服务的命令行格式为
sc stop/start 服务名称
注意:服务名称:可以在控制面板->管理工具->服务里面,双击对应的服务显示名来查询。
例:
设置远程注册表服务为手动其格式为
sc config RemoteRegistry start= demand
设为禁用的格式为
sc config RemoteRegistry start= disabled
停止服务则格式为
sc stop RemoteRegistry
方法二:
使用net.exe功能启动或停止服务
启动/停止 服务的命令行格式为
net start / stop服务名称
例:
以启动和停止Oracle服务为例:由于Oracle服务非常占用系统资源,而且平时不怎么用Oracle数据库。所以我将其设为手动启动,然后每次用到Oracle时,使用批处理来启动一堆服务。
-- 开始Oracle的服务
@echo off
net start OracleMTSRecoveryService
net start OracleOraHome92Agent
net start OracleOraHome92TNSListener
net start OracleService数据库名
-- 停止Oracle的服务
@echo off
net stop OracleService数据库名
net stop OracleOraHome92TNSListener
net stop OracleOraHome92Agent
net stop OracleMTSRecoveryService
启动方法:
方法1.保存之后便可以直接通过双击文件即可启动或者关闭服务
方法2.设置环境变量
在环境变量中的系统变量中,在PATH后面添加批处理文件的路径,不要忘记用分号;和前面的环境变量隔开,然后直接在开始菜单中的运行中输入可执行相应的文件
环境变量的作用就是告诉系统在运行中输入信息的位置而已。
别的地方贴过来的。。。
现在baidu发个链接难死了
更多追问追答
追问
用批处理启动或者停止一些服务是没问题的,我现在的的关键问题是如何的到程序所需的服务。以便使服务不用开机启动,又能使程序启动时自动启动这些服务。(而不是通过其他的手段的到程序所需要的服务,然后写成批处理文件)。
追答
尝试下读这个地方的信息
\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
来自:求助得到的回答
镭速传输
2024-10-28 广告
2024-10-28 广告
作为深圳市云语科技有限公司的一员,我们推出的FTP替代升级方案,旨在解决传统FTP在安全性、效率、稳定性及管理方面的不足。我们的产品通过采用自主研发的Raysync传输协议,实现高效、安全的文件传输,即使在恶劣网络环境下也能确保传输的稳定性...
点击进入详情页
本回答由镭速传输提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询