분류 전체보기 29

[Python] 파이썬 3.0 이전 버전에서 한글 주석 사용하기

Python 3.0 이하 버전에서 한글 주석을 사용하는 경우 .py 소스파일 실행 시 에러가 발생하게 됩니다. 이런 경우 .py 소스파일 첫줄에 아래와 같이 한줄 추가를 해주면 간단히 해결 됩니다. #-*- coding: utf-8 -*- Python 2 버전의 경우 문자열을 Unicode형식으로 처리하기 때문에 위와 같은 인코딩 설정이 필요하며, Python 3.0 부터는 기본적으로 UTF-8을 사용하여 인코딩 설정을 하지 않아도 됩니다.

[Windows] TCP/UDP 상태확인

Windows 서버 운영 시 TCP Socket 고갈로 인해 서비스에 문제가 발생하는 경우가 발생할 수 있습니다. 이 경우 어떤 프로세스(PID)에서 TCP 세션을 많이 연결되어 있는지 확인하는 것이 중요한데, 이 경우 netstat 명령어를 통해 확인이 가능합니다. 우선 netstat 명령어란? - 내 컴퓨터 또는 서버의 네트워크 상태를 확인할 수 있는 명령어로서 어떤 Port가 열려 있고 해당 Port는 어떤 PID에 의해 오픈 되었는지 등의 정보 확인이 가능합니다. [ netstat 에서 자주 사용하는 옵션 ] -a : 모든 연결 및 수신 대기 포트를 표시합니다. -n : 주소 및 포트 번호를 숫자 형식으로 표시합니다. -o : 각 연결의 소유자 프로세스 ID를 표시합니다. -p : proto로 지..

OS/Windows 2022.10.18

[Linux] 리눅스 메모리 사용현황 파악

리눅스 서버의 경우 여유 메모리를 Cache 영역으로 사용하려고 하는 습성이 있는데, 이는 여유 메모리를 최대한 Cache 영역으로 활용하면 성능 향상에 도움이 되기 때문입니다. 그럼 리눅스 서버의 전반적인 메모리 사용현황을 손쉽게 확인할 수 있는 방법에 대해 알아보도록 하겠습니다. free 명령어 [total] : Total 메모리 Size [used] : 현재 사용중인 메모리 Size. (used = total-(free+buff/cache)) [free] : 실제 사용 가능한 여유 있는 메모리 Size. (free = total-(used+buff/cache)) [shared] : tmpfs(메모리 파일 시스템), ramfs 등으로 사용되는 메모리. 여러 프로세스에서 사용할 수 있는 공유 메모리 S..

OS/Linux 2021.02.08

[Python] 파이썬 exe 파일 Windows 기본 icon 사용하기

파이썬으로 작성한 코드를 pyinstaller를 통해 exe 파일을 만드는 경우 기본 icon은 아래와 같이 생성됩니다. 물론 해당 icon을 그대로 사용해도 되고, 다른 icon을 사용해도 전혀 문제가 되지 않습니다. 다만 저 같은 경우에는 Windows 기본 icon을 사용하고 싶어 해당 방법을 찾아보았고, 혹 저와 같은 생각을 가지시는 분들이 계실 거 같아 이 글을 작성하게 되었습니다. 구글링을 통해 pyinstaller 시 Windows 기본 icon을 사용하는 방법을 찾아보면, 대부분 pyinstaller로 exe 파일 만들 때 "--icon=NONE" 옵션을 사용하라고 가이드하고 있습니다. 하지만 저 같은 경우에는 해당 옵션을 사용해도 pyinstaller에서 제공하는 기본 icon으로 계속 ..

[Python] 파이썬 Windows 서비스 등록

이번 시간에는 파이썬으로 제작한 exe 실행파일을 Windows 서비스에 등록하여 실행시키는 방법에 대해 알아보도록 하겠습니다. 최종적으로 구현하고자 하는 방식은 아래와 같습니다. [ 프로그램 구성 ] - Watchdog.exe (Windows Service 등록) - Main.exe [ 프로그램 실행 방식 ] 1. 서비스 시작 1) Windows Service 에서 Watchdog 서비스(ex, Test Service) 시작 2) Watchdog.exe 가 Main.exe 프로그램 실행 2. 서비스 중지 1) Windows Service 에서 Watchdog 서비스(ex, Test Service) 중지 2) Watchdog.exe 가 Main.exe 프로그램 종료(kill) 1. 테스트 환경 Pytho..

[Excel] 엑셀 기본 단축키 모음

직장인이라면 누구나 엑셀을 사용하실 겁니다. 엑셀에는 아주 많은 단축키가 존재하는데, 이 많은 단축키를 모두 외우기란 불가능합니다. 이번 시간에는 기본적이면서도 업무의 효율성을 높여줄 수 있는 단축키 위주로 정리하여 보았습니다. 한 번씩 따라 해 보시면 금방 본인의 것으로 만들 수 있으며, 해당 단축키를 잘만 활용한다면 업무시간을 조금이나마 단축시킬 수 있지 않을까 조심스럽게 생각해 봅니다. ※ 해당 단축키는 MS 2013 버전 기준으로 작성하였습니다. "엑셀 유용한 단축키 모음" [ 엑셀 바로 실행 ] - 윈도우키 + r 키로 실행창을 열고 excel 이라고 입력 후 확인을 누르거나 엔터를 치면 엑셀이 바로 실행됩니다. [ 시트 이동 ] Crtl + Page Up 또는 Ctrl + Page Down [..

컴퓨터 팁 2021.02.05

[Windows] 윈도우 단축키 모음

컴퓨터를 통해 업무를 보는 분들이라면 기본적으로 알고 있으면 좋을 만한 윈도우 단축키 정보를 정리해 보았습니다. 마우스를 통해 일일이 클릭하는 것보단 아래와 같은 기본적인 단축키 정도만 알고 있어도 업무 효율성을 조금이나마 높여줄 것으로 생각됩니다. "유용한 단축키 모음" 1. 바탕화면 바로가기 윈도우키 + d 2. 화면보호기 모드 실행 윈도우키 + l 3. 전체화면 캡처 Print Screen 4. 현재화면 캡처 Alt + Print Screen 5. 파일탐색기 실행 윈도우키 + e 6. 현재 창 및 프로그램 종료 Alt + F4 7. 복사 Ctrl + c 8. 붙여넣기 Ctrl + v 9. 파일 및 폴더이름 변경 F2 10. 파일 저장 Alt + s 11. 작업 취소 Ctrl + c 12. 작업 되돌..

OS/Windows 2021.02.04

[PostgreSQL] PostgreSQL 서비스 수동 중지 및 시작

Windows 서버에서 PostgreSQL 을 운영하는 도중 다양한 이유로 인해 Windows 서비스에서 PostgreSQL 서비스가 컨트롤(중지 및 시작) 되지 않는 경우가 발생할 수 있습니다. 이때 PostgreSQL에서 제공해 주는 pg_ctl.exe를 통해 수동으로 서비스를 중지 및 시작할 수 있습니다. 우선 pg_ctl.exe 은 PostgreSQL 이 설치된 디렉토리 중 bin 디렉토리에 위치하며, 해당 파일이 하는 역할은 크게 아래와 같습니다. pg_ctl.exe 는 PostgreSQL 데이터베이스 제반 작업을 수행하게 됩니다. 이 작업은 데이터베이스 클러스터 초기화, 서버 시작, 중지, 재시작, 서버 상태 출력 등입니다. 물론 서버는 postgres 명령으로 직접 실행할 수 있으나, pg_..

Database/PostgreSQL 2021.02.02

[Python] 파이썬 SMTP를 통한 메일 전송

파이썬에서 제공해 주는 라이브러리 중 기본 내장된 "smtplib" 라는 모듈을 통해 아주 쉽게 메일을 전송할 수 있습니다. 아래 예제를 참조하여 해당 기능을 잘 활용한다면 본인의 업무 효율성을 높여줄 수 있는 하나의 좋은 무기가 될 수 있으니 업무에 한 번씩 적용해 보셔도 좋을 거 같습니다. 우선 STMP가 무엇인지 살짝 알아보고 넘어가도록 하겠습니다. SMTP는 "Simple Mail Transfer Protocol" 의 약자로서 메일을 보내는데 사용되는 프로토콜입니다. 보통 사내에 SMTP 서버를 구축하여 메일 서버를 통해 메일 발송이 이루어지는데, 요즘은 굳이 사내에 메일 서버를 구축할 필요 없이 Google, MS, 네이버, 다음 등을 통해서 좀 더 편리하게 메일 기능을 사용할 수도 있습니다. ..

[Python] 웹 크롤링(Crawling) 주의사항

인터넷에서 웹 크롤링이라고 검색을 하면 파이썬을 통해 쉽고 간편하게 웹 정보를 수집할 수 있는 내용들이 상당히 많이 공유되고 있습니다. 좀더 편하고 쉽게 웹에 있는 정보들을 수집하고 재활용할 수 있어 충분히 좋은 기능이긴 하지만, 해당 기능을 사용하기 전에 기본적인 주의사항에 대해서 숙지를 하고 사용하는 것이 좋을거 같아 이렇게 글을 남깁니다. "모든 정보를 크롤링 할 수 없다!" 현재 인터넷상에는 정말 다양한 사이트들과 다양한 정보들이 존재하는데, 모든 정보에 대해 크롤링이 허용되는 것이 아닙니다. 개인정보가 있는 사이트의 경우 당연히 수집 못하도록 막을 것이고, 가져가지 말아야할 정보를 가져 가는 경우에는 저작권에 걸려 법적 문제까지 가는 경우가 발생할 수 도 있습니다. 그럼 이런경우 어떻게 구분하여..