PYTHON

포스트: 124|조회수: 0|TERM
Items

Posts

124 posts

[Python] subprocess 실행 시 timeout 적용하기

지훈현서|2020년 11월 22일

파이썬으로 다른 서브프로세스를 실행시킬 때 지금껏 12년 동안, subprocess.Popen(...)을 이용하여 왔었습니다. 그런데 만약 이 프로세스를 돌리다가 별도 timeout을 지정하고 싶다는 생각을 했는데 Popen 자체에는 해당 timeout 을 지정하는 곳이 없습니다. 대신, proc = subprocess.Popen(...)try: outs, errs = proc.communicate(timeout=5)except TimeoutExpired: proc.kill() outs, errs = proc.communicate() 또는 proc = subprocess.Popen(...)try: proc.wait(timeout=5)except TimeoutExpired:

[윈도우] 특정 포트 (UDP 포함) 가 열려 있는지 체크

지훈현서|2020년 11월 16일

지금까지 일반적으로 리눅스 등에서는 netcat 명령을 이용하여 특정 TCP 포트가 열려있는지 체크 했었습니다. 위와 같이 nc 명령 다음에 -zv 옵션을 주고 IP 주소와 포트 번호를 주면 해당 포트가 열려있는지 조사하여결과를 알려줍니다. -u 옵션을 더 주면 TCP 대신 UDP 를 스캔합니다. nc -zuv 10.211.55.28 161위 명령은 10.211.55.28 호스트에 161 UDP포트 (SNMP) 가 떠 있는지 확인하는 것입니다. 일반적인 batch 파일에서는 $? 로 수행 결과가 0 이면 성공 아니면 실패라고 인식하고 진행합니다. 물론 윈도우용 netcat 을 다운받아 CMD.EXE에서 해 보았습니다만, 두번 인가 돌리고 나서는 윈도우 디펜더가 자동으로 해당 nc.exe를 지워버리더

anaconda, 파이썬 설치와 딥러닝 준비 [keras --> tf.keras]

아나콘다? 아나콘다는 패키지 관리와 디플로이를 단순케 할 목적으로 과학 계산을 위해 파이썬과 R 프로그래밍 언어의 자유-오픈 소스 배포판이다. 패키지 버전들은 패키지 관리 시스템 conda를 통해 관리된다. 아나콘다 배포판은 1300만 명 이상의 사용자들이 사용하며 윈도우, 리눅스, macOS에 적합한 1,400개 이상의 유명 데이터 과학 패키지가 포함되어 있다. anaconda, 파이썬 설치와 딥러닝 준비 [keras --> tf.keras] 아나콘다에 텐서플로를 설치하면 곧바로 딥러닝을 시작할 수 있다. Tensorflow 2.0으로 새롭게 시작하는 tensorflow keras --> tf.keras 파이썬 실행환경 구축, 딥러닝 환경구축:anaconda 설치 [32bi

Cubase 드럼맵 파일을 drm <-> text 형태로 변환하는 파이썬 코드

올해 7월에에서 이미 비슷한 코드를 만들었는데 이걸 왜 또 만들었냐면,정말 7월에 저런 코드를 만들었다는 걸 까먹었기 때문이고...(뭔가 기시감은 있었는데)좀 더 향상된 기능이 필요했기 때문이다.이전에는 drm 파일을 text 파일로 변경만 가능했다면, 이제는 이렇게 변경된 text 포멧으로부터 drm 파일을 생성할 수 있다. NI 에서 만든 STUDIO DRUMMER 를 쓰려고 보니 drm 파일이 부정확한 게 이 코드를 만들게 된 첫 번째 이유다. || C1 || KICK Dampened |||| C#1 || SNARE Side Stick |||| D1 || SNARE Centre Alt ||으로 표현된 텍스트 파일에서 원하는 미디 노트와 드럼 키 이름을 입력한 뒤에 이 파일을 실행인자로 넘기면 txt