- 帖子
- 1
- 积分
- 13
- 技术
- 0
- 捐助
- 0
- 注册时间
- 2012-6-25
|
本帖最后由 w3cs 于 2012-6-26 10:32 编辑
请教大家个问题,如下代码:
@echo off
@echo.
@echo Apache service is stopped
net stop apache >nul 2>nul
if %errorlevel% equ 0 (
@echo Apache service stopped successfully.
) else (
@echo Apache service stopped failed.
)
@echo.
@echo Squid service is stopped
net stop squid >nul 2>nul
if %errorlevel% equ 0 (
@echo Squid service stopped successfully.
) else (
@echo Squid service stopped failed.
)
taskkill /f /im httpd.exe >nul 2>nul
taskkill /f /im squid.exe >nul 2>nul
@echo.
reg delete HKEY_LOCAL_MACHINE\SOFTWARE\GNU /f >nul 2>nul
C:
if not exist "C:\Apache\bin" (
@echo "C:\Apache\bin" directory does not exist.
) else (
sc getkeyname "Apache"|findstr "1060" >nul 2>nul
if %errorlevel% neq 0 (
@echo Apache service already dose not exist.
) else (
cd C:\Apahce\bin 2>nul
httpd -k uninstall -n "Apache" >nul 2>nul
if %errorlevel% neq 0 (
@echo Apache service uninstall failed.
) else (
@echo.
@echo Removing the Apache service
@echo The Apache service has been removed successfully.
)))
cd\
if not exist "C:\squid\sbin" (
@echo "C:\squid\sbin" directory does not exist.
) else (
sc getkeyname "Squid"|findstr "1060" >nul 2>nul
if %errorlevel% neq 0 (
@echo Squid service already dose not exist.
) else (
cd C:\squid\sbin 2>nul
squid -r >nul 2>nul
if %errorlevel% neq 0 (
@echo Squid service uninstall failed.
) else (
@echo.
@echo Removing the Squid service
@echo The Squid service has been removed successfully.
)))
@pause
问题是,apache、squid服务同样不存在,
为什么判断apache服务时候%errorlevel% ==1,,而判断squid时候%errorlevel%==0。。
测试发现不管squid服务存不存在都是0
不是很了解%errorlevel%如何使用。或是以上代码该如何改进。
各位大虾多多提意见。谢谢了。
============================================================================
目的:
卸载apache服务,
1.判断 C:\Apache\bin 目录是否存在
如果不存在,显示目录不存在,否则继续
2.判断服务是否存在 如果不存在,显示服务已不存在,否则继续
3.卸载服务,如果卸载失败,显示失败,成功,显示卸载成功。
卸载squid服务,
1.判断 C:\squid\sbin 目录是否存在
如果不存在,显示目录不存在,否则继续
2.判断服务是否存在 如果不存在,显示服务已不存在,否则继续
3.卸载服务,如果卸载失败,显示失败,成功,显示卸载成功。 |
|