中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]如何用批处理去启动服务
作者:
标题: [求助]如何用批处理去启动服务 上一主题 | 下一主题
wssjzz
新手上路





积分 2
发帖 10
注册 2009-2-16
状态 离线
『楼 主』:  [求助]如何用批处理去启动服务

我的机子上装了orcal平时不用的时候服务开着浪费资源,用的时候在去开服务麻烦,请高人帮写个批处理,能启动OracleServiceORCL和OracleOraDb10g_home1TNSListener这两个服务,

2009-2-17 10:18
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yishanju
银牌会员

[b]看你妹啊[/b]


积分 1488
发帖 1357
注册 2006-5-20
状态 离线
『第 2 楼』:  

sc start 服务名
net start 服务名




有问题请发论坛或者自行搜索,再短消息问我的统统是SB
2009-2-17 10:41
查看资料  发短消息 网志   编辑帖子  回复  引用回复
dato
高级用户




积分 916
发帖 377
注册 2004-3-8
状态 离线
『第 3 楼』:  


@echo off
call :quiet>nul 2>&1
goto :EOF
:quiet
%systemroot%\system32\sc.exe config OracleServiceORCL start= DEMAND
%systemroot%\system32\sc.exe start OracleServiceORCL
%systemroot%\system32\sc.exe config OracleOraDb10g_home1TNSListener start= DEMAND
%systemroot%\system32\sc.exe start OracleOraDb10g_home1TNSListener
%systemroot%\system32\sc.exe config OracleOraDb10g_home1iSQL*Plus start= DEMAND
%systemroot%\system32\sc.exe start OracleOraDb10g_home1iSQL*Plus
%systemroot%\system32\sc.exe config OracleDBConsoleorcl start= DEMAND
%systemroot%\system32\sc.exe start OracleDBConsoleorcl
rem 3800+需要90秒才能启动完OracleDBConsoleorcl服务
rem %systemroot%\system32\ping.exe -n 90 127.0.0.1>nul
%systemroot%\system32\sc.exe config OracleCSService start= DEMAND
%systemroot%\system32\sc.exe start OracleCSService
具体查看sc /?



http://dato.ys168.com
google search bot
http://dato.minidns.net/
2009-2-17 10:44
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wssjzz
新手上路





积分 2
发帖 10
注册 2009-2-16
状态 离线
『第 4 楼』:  

回复2楼
这样sc start 服务名
net start 服务名,做成批处理不行,只能做命令在cmd下输入,还是麻烦

回复3楼,先谢谢你,可我把他复制到文本文件保存成BAT文件后,运行弹出CMD窗口闪一下又没了,dos我也不懂,你能帮我看一下吗?
谢谢!

2009-2-17 11:13
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 5 楼』:  Re 4楼

在批处理中,试试 net start + 服务的 Display Name (不是Service Name)



2009-2-17 11:25
查看资料  发短消息 网志   编辑帖子  回复  引用回复
wssjzz
新手上路





积分 2
发帖 10
注册 2009-2-16
状态 离线
『第 6 楼』:  

回复5楼,这样是一样的还是不行,
谢谢大家,
是不是,用批处理文件不能启动服务里面的服务项呢?
我在百度也没搜到相关的内容

2009-2-17 11:34
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 7 楼』:  Re 6楼

请把你写的完整代码贴出来看看

友情提示,如果服务的 Display Name 里面有空格,需要加双引号。



2009-2-17 11:38
查看资料  发短消息 网志   编辑帖子  回复  引用回复
wssjzz
新手上路





积分 2
发帖 10
注册 2009-2-16
状态 离线
『第 8 楼』:  

以前没用接触脚本较少,只是最近做数据库,经常做一些配置,才看到脚本的用处,就想到了用脚本启动服务,
这是我从网上找的,
@echo off
:dosmenu
REM 选择菜单
echo #**********************************************************************#
echo       Windows 服务启动脚本 made by qukunping 20080101      
echo #**********************************************************************#
echo       命令相关参数说明如下 快速切换
echo #**********************************************************************#
echo.
echo [1]启动mysql   [2]关闭mysql
echo [3]启动sqlserver2005 [4]关闭sqlserver2005
echo [5]启动oracle   [6]关闭oracle   其它键退出本程序
echo.
echo #**********************************************************************#
set /P CHS= 请选择: [1],[2],[3],[4],[5],[6]?

if /I "%CHS%"=="1" (
goto aaaa
)

if /I "%CHS%"=="2" (
goto bbbb
)
if /I "%CHS%"=="3" (
goto cccc
)
if /I "%CHS%"=="4" (
goto dddd
)
if /I "%CHS%"=="5" (
goto eeee
)
if /I "%CHS%"=="6" (
goto ffff
)
goto zzzz
:aaaa
REM 启动mysql
net start MySQL
pause
cls
goto dosmenu
:bbbb
REM 关闭mysql
net stop MySQL
pause
cls
goto dosmenu
:cccc
REM 启动sqlserver2005
net start "SQL Server (MSSQLSERVER)"
pause
cls
goto dosmenu
:dddd
REM 关闭sqlserver2005
net stop "SQL Server (MSSQLSERVER)"
pause
cls
goto dosmenu
:eeee
REM 启动OracleServiceORCL
net start "OracleServiceORCL"
net start "OracleOraDb10g_home1TNSListener"
pause
cls
goto dosmenu
:ffff
REM 关闭OracleServiceORCL
net stop "OracleOraDb10g_home1TNSListener"
net stop "OracleServiceORCL"
pause
cls
goto dosmenu
:zzzz
REM 退出
exit

加引号与不加都不管用,

[ Last edited by wssjzz on 2009-2-17 at 12:17 ]

2009-2-17 12:16
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ZJHJ
高级用户





积分 609
发帖 374
注册 2006-8-2
状态 离线
『第 9 楼』:  

如果你不懂命令行,又怕搞错的话,你可以先手动设置一次,用备份的方法.....,将备份的文件改成*.bat
给你个现成的

@echo off
:: wangwei QQ: 251485609
if not exist  bfwjcf  md  bfwjcf
echo   正在服务备份文件,请稍等......
sc query type= service state= all| findstr /r /i /C:"service_name:">fwbf.txt
echo @echo 操作备份的时间日期是: %time% %date% >服务备份文件.txt
echo @pause>>服务备份文件.txt
for /f "tokens=2 delims=:" %%j in (fwbf.txt) do @(sc qc %%j |findstr /r /i START_TYPE>temp_.txt
for /f "tokens=4 delims=:_ " %%s in (temp_.txt) do @echo sc config  %%j start= %%s >>服务备份文件.txt)
echo @echo 操作已完成!>>服务备份文件.txt
del fwbf.txt
del temp_.txt
move 服务备份文件.txt bfwjcf\
echo.
echo       服务备份已完成!
echo.  
pause

2009-2-17 12:45
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 10 楼』:  Re 8楼

请问“不管用”的具体表现是什么?你输入了哪个选项,是5吗?报错信息是什么,能否贴出来看看?



2009-2-17 14:17
查看资料  发短消息 网志   编辑帖子  回复  引用回复
wssjzz
新手上路





积分 2
发帖 10
注册 2009-2-16
状态 离线
『第 11 楼』:  

是输入[5]按回车,窗口就关闭了

2009-2-17 16:13
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 12 楼』:  Re 11楼

不要双击运行批处理
开始
运行
cmd
你的批处理完整路径
回车



2009-2-17 18:41
查看资料  发短消息 网志   编辑帖子  回复  引用回复
wssjzz
新手上路





积分 2
发帖 10
注册 2009-2-16
状态 离线
『第 13 楼』:  

呵呵终于解决了,居然如此简单!!!

2009-2-23 18:47
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 14 楼』:  Re 13楼

如果有人帮你解决了问题,建议进行以下操作:

1、修改帖子标题,在标题最前面注明:[已结]

2、给竭尽所能帮你的人、正确回答问题的人加分(你自己的积分不会减少)以示感谢,虽然大家来论坛是为了学习而不是为了积分,但加分聊表谢意总是或多或少能够让花费了时间和精力无私帮助你的人略感欣慰。

3、如果你是在别人的提示下自己写出了代码,请把自己的方法贴出来跟大家分享一下,也许他人可以帮你指出代码中的不足之处、告诉你如何提高执行效率等,有交流才能更快地进步。



2009-2-23 21:11
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: