BAT 일괄 처리 서비스 작동 여부를 판단하는 방법(일괄 처리 명령 통합 적용)
일괄 처리(Batch), 일괄 처리 스크립트라고도 합니다.말 그대로 일괄 처리는 특정한 대상을 대량으로 처리하는 것으로 일반적으로 간단한 스크립트 언어로 여겨지며 이것은 DOS와 Windows 시스템에 응용된다.일괄 처리 파일의 확장자는bat 또는 cmd입니다.현재 비교적 흔히 볼 수 있는 일괄 처리는 DOS 일괄 처리와 PS 일괄 처리 두 종류를 포함한다.PS 일괄 처리는 강력한 사진 편집 소프트웨어인 Photoshop을 바탕으로 그림을 대량으로 처리하는 스크립트입니다.DOS 일괄 처리는 DOS 명령을 기반으로 DOS 명령을 자동으로 대량으로 실행하여 특정 작업을 수행하는 스크립트입니다.더욱 복잡한 상황은 if, for, goto 등 명령 제어 프로그램의 운행 과정을 사용해야 한다. 예를 들어 C, Basic 등 고급 언어와 같다.만약 더욱 복잡한 응용을 실현해야 한다면 외부 프로그램을 이용하는 것이 필요하다. 이것은 시스템 자체가 제공하는 외부 명령과 제3자가 제공하는 도구나 소프트웨어를 포함한다.일괄 처리 프로그램은 명령행 환경에서 실행되지만 명령행 소프트웨어를 사용할 수 있을 뿐만 아니라 현재 시스템에서 실행할 수 있는 모든 프로그램은 일괄 처리 파일에 놓고 실행할 수 있다.
앞말
어떤 qliksense 서버는healthcheck(건강상태 모니터링) 프로그램이 필요해서 일괄 처리 스크립트가 생겼습니다.
대략적인 기능은 다음과 같습니다.
@echo off
color 2E
set YYYYmmdd=%date:~0,4%%date:~5,2%%date:~8,2%
set hhmiss=%time:~0,2%%time:~3,2%%time:~6,2%
set filename=healthcheck.log
REM set "filename=healthcheck_%YYYYmmdd%_%hhmiss%.log"
set "datetime=%YYYYmmdd%%hhmiss%"
set allCount=0
set errorCount=0
set checkList="QlikSenseServiceDispatcher" "QlikSenseSchedulerService" "QlikSenseRepositoryService" "QlikSenseRepositoryDatabase" "QlikSenseProxyService" "QlikSensePrintingService" "QlikSenseEngineService" "QlikLoggingService"
echo ============================================ >%filename%
echo Health Checking by Qlik Team >>%filename%
echo zhengkai.blog.csdn.net
echo (datetime: %datetime% ) >>%filename%
echo ============================================ >>%filename%
echo. >>%filename%
echo. >>%filename%
for %%L in (%checkList%) do call :health_check %%L
echo ============================================ >>%filename%
echo Checking Finish. >>%filename%
echo. >>%filename%
echo Error : %errorCount% of %allCount% >>%filename%
echo. >>%filename%
echo ============================================ >>%filename%
call :check_status
echo ============================================ >>%filename%
goto:end
:health_check
sc query |find /i %1 >nul 2>nul
if not errorlevel 1 (
echo SUCCESS...... %1 >>%filename%
)else (
echo FAILD...... %1 is error ! >>%filename%
set /a errorCount+=1
)
set /a allCount+=1
goto:eof
:check_status
if %errorCount% gtr 0 (
echo ###### this server is Not Health >>%filename%
) else (
echo ###### this server is Health >>%filename%
)
goto:eof
:end
copy %filename% \\xxxx\DataShare\CSDN\ZhengKai\
배치 현재 날짜 시간 가져오기, 동적 파일 이름 생성
set YYYYmmdd=%date:~0,4%%date:~5,2%%date:~8,2%
set hhmiss=%time:~0,2%%time:~3,2%%time:~6,2%
set "filename=healthcheck_%YYYYmmdd%_%hhmiss%.log"
echo %filename%
로그 파일에 일괄 출력 echo
echo ============================================ >%filename%
echo Health Checking by Qlik Team >>%filename%
echo ============================================ >>%filename%
일괄 처리 목록listList에 정의된 후 사용 가능
set checkList="QlikSenseServiceDispatcher" "QlikSenseSchedulerService" "QlikSenseRepositoryService" "QlikSenseRepositoryDatabase" "QlikSenseProxyService" "QlikSensePrintingService" "QlikSenseEngineService" "QlikLoggingService"
echo ============================================ >%filename%
echo Health Checking List >>%filename%
for %%L in (%checkList%) do echo %%L
echo ============================================ >>%filename%
일괄 처리 함수와call 함수하나 정의: function_name, 중간에 함수 내용, 뒤에 goto:eof로 마무리
call :check_status
:check_status
if %errorCount% gtr 0 (
echo ###### this server is Not Health >>%filename%
) else (
echo ###### this server is Health >>%filename%
)
goto:eof
일괄 처리count 수계산 더하기 set/a allCount+=1
set allCount=0
for %%L in (%checkList%) do set /a allCount+=1
일괄 처리copy 복사 파일일괄 처리가 보다 크거나 작거나 같거나 작거나 크거나 같지 않음
if %errorCount% gtr 0 (
echo ###### this server is Not Health >>%filename%
) else (
echo ###### this server is Health >>%filename%
)
총결산상기 서술한 것은 여러분께 소개해 드린 BAT 일괄 처리 판단 서비스가 정상적으로 작동하는지 판단하는 방법(일괄 처리 명령 종합 응용)입니다. 여러분께 도움이 되고 저희 사이트에 대한 여러분의 지지에 감사드립니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
배치 파일에서 IP 주소 변경 간소화 (win10)배치 파일을 마우스 오른쪽 버튼으로 클릭 관리자로 실행을 선택 사용자 계정 제어 화면에서 "예"를 선택 이상 해설 두 번째 줄은 IP 주소 변경 세 번째 줄은 우선 DNS 서버 변경 네 번째 줄은 대체 DNS 서버 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.