subprocess 5

[Python] subprocess를 이용한 윈도우 방화벽 ON/OFF 점검

시스템 관리를 하다 윈도우 방화벽 상태를 주기적으로 체크해야 할 일이 있어서 간단히 파이썬과 명령어를 조합하여 만들어 보았다. subprocess.check_output : 명령어 결과를 문자열로 리턴 받음 import subprocess if 'ON' in str(subprocess.check_output(['netsh', 'advfirewall', 'show', 'currentprofile', 'state'], universal_newlines=True)): print('Windows Firewall State ON') else: print('Windows Firewall State OFF') RESULT : Windows Firewall State ON RESULT : Windows Firewall..

[Python] subprocess모듈과 7z을 이용한 전일 로그 자동 압축 보관

7z은 커맨드 명령어를 제공하며, 오픈소스이다. 다운로드 페이지 : https://www.7-zip.org/download.html Download Download .7z Any / x86 / x64 LZMA SDK: (C, C++, C#, Java) www.7-zip.org 이번 포스팅에서 쓰는 옵션은 압축(a) 옵션을 사용하여 전일 로그를 압축해보려 한다. 다양한 옵션을 이용하려면 포스팅 하단의 URL 경로나 7z.exe 명령어를 실행하면 알 수 있다. 대상 로그는 IIS로그로 포맷은 ex_yyyymmdd.log 형식이며, 현재 2019-10-24일 기준으로 전일 기준인 ex_20191023.log 파일이다. import subprocess from datetime import timedelta fr..

[Python] subprocess모듈과 Bandizip을 이용한 전일 로그 자동 압축 보관

Bandizip은 커맨드 명령어를 제공하며, 자세한 옵션은 아래 URL을 참고 URL https://www.bandisoft.com/bandizip/help/parameter/ 이번 포스팅에서 쓰는 옵션은 압축(c)과 자동 창 닫힘(-y)을 사용하여 전일 로그를 압축해보려 한다. 대상 로그는 IIS로그로 포맷은 ex_yyyymmdd.log 형식이며, 현재 2019-10-20일 기준으로 전일 기준인 ex_20191019.log 파일이다. import subprocess from datetime import timedelta from datetime import datetime from os import chdir yesterdaylog = 'ex_'+str(datetime.today().date() - t..

[Python] subprocess 모듈과 DOS ping 명령어를 이용한 핼스 체크

파이썬 subprocess 모듈과 DOS ping 명령어를 이용한 IP ping 체크 DOS 명령어의 결과값을 이용하여 ping 체크 및 응답시간을 체크할 수 있다. Ping Check와 응답시간 임계치는 조건문을 이용하여 별도로 모니터링을 할 수 있다. import subprocess import re pinglist = (ip1,ip2) p = re.compile('[=]\s(\d+)[m][s]') for i in pinglist: cmd = 'ping -n 3 '+i # ping을 3번 수행 try: for x in subprocess.check_output(cmd).splitlines(): p1 = p.findall(str(x)) print(i, 'Ping Ok','최소 응답시간: '+p1[0],..