포스트464 [Python] subprocess 모듈 사용법 및 예제 subprocess는 파이썬 스크립트에서 쉘 명령 등 다른 프로세스를 실행하고 출력 결과를 가져올 수 있게 해주는 라이브러리다. subprocess 모듈은 os.system, os.spawn* 등을 대체하기 위해 만들어졌다. subprocess 사용법 call() 함수 가장 기본적인 서브 프로세스 호출명령이다. 인자로 넘겨진 값들을 이용해 바로 프로세스를 실행한다. 프로세스를 실행하고, 실행한 프로세스의 종료를 기다렸다가 리턴코드를 반환한다. 프로세스가 정상종료했으면 0을 리턴하고, 비정상 종료라면 프로세스가 반환하는 에러 코드를 가져온다. subprocess.call(args, *, stdin=None, stdout=None, stderr=None, shell=False, timeout=None) ar.. 2022. 7. 3. [Python] 문자열 인코딩과 디코딩하는 방법 파이썬에서 문자열 데이터를 다룰 때 인코딩을 신경써야 할 경우가 있다. 영어로 구성된 텍스트 데이터야 ASCII로만 처리가 되니까 인코딩 문제가 없는데, 한글 같은 문자가 포함되어 있는 텍스트를 처리할 때에는 인코딩 문제를 신경써야 한다. 인코딩 감지 문제는 내가 만든 문자열 데이터를 내가 읽어서 처리하는 경우라면 뭘로 인코딩되어 있는지 알고 있기 때문에 데이터를 처리하는데 문제가 없다. 하지만 다른 사람이 전송한 문자열 데이터가 어떤 포맷으로 인코딩되어 있는지를 모르면 제대로 해석할 수 없다. 문자열 데이터가 어떤 형식으로 인코딩되어 있는지를 확인하기 위해서 chardet 라이브러리가 필요하다. pip로 설치해주자. $ pip install chardet chardet 모듈의 detect() 함수를 이.. 2022. 7. 2. [IntelliJ] Command line is too long. Shorten command line for .. 에러 해결방법 IntelliJ 프로젝트 빌드시 "Command line is too long. Shorten command line for …" 에러를 만나게 되는 경우가 있다. 이런 에러를 뿌리면서 빌드가 안된다. 해결방법 프로젝트 루트 경로에서 .idea/workspace.xml 파일을 찾는다. 이 파일에서 섹션을 찾는다. 그 안에 dynamic.classpath 프로퍼티를 하나 넣어준다. ... ... 만약 PropertiesComponent 섹션이 없으면 dynamic.classpath 프로퍼티와 함께 추가해준다. 이렇게 해결이 안된다면, Run > Edit Configurations.. 로 들어가서 Shrten command line 항목을 JAR manifest로 변경해보자 2022. 6. 25. [IntelliJ] 윈도우, Terminal 탭을 PowerShell로 변경하기 윈도우에서 IntellIJ로 개발을 하다보면 터미널 탭이 신경 쓰인다. 맥이나 리눅스에서 개발할 때에는 Shell 명령을 사용할 수 있어서 일반 터미널을 열어서 작업하는 것처럼 쓸 수 있었는데, 윈도우에서는 cmd 창이 터미널 탭에 연결되어 있어서 불편하다. 대표적으로 ls 명령을 습관적으로 실행하는데 cmd에는 ls 명령어가 없기 때문에 에러가 발생한다. 무의식으로 나오는 명령어가 실패하니 의식의 흐름이 끊기며 짜증이난다. 윈도우에는 PowerShell이라는 좋은 프로그램이 있다. 윈도우를 사용하지만 Bash 같은 쉘 명령어를 사용할 수 있는 프로그램이다. 맥이나 리눅스를 주로 사용하는 개발자가 윈도우에서 IntelliJ를 쓰는 경우라면 터미널을 PowerShell로 설정해 스트레스를 줄여보자. Ter.. 2022. 6. 24. [IntelliJ] Error:java: javacTask: source release 8 requires target release 1.8 IntelliJ IDE를 사용해 개발하보면 다음 에러를 만나게 되는 경우가 있다. Error:java: javacTask: source release 8 requires target release 1.8 뭔가 자바 버전이 맞지 않다는 에러로 보인다. IntelliJ를 오래 사용한 개발자라면 쉽게 해결할 수 있는 문제이지만 잘 모르면 당황하게 된다. 해결방법 에러 메시지가 전하는 대로 자바 버전 정보를 IntelliJ 설정에서 변경해주면 된다. 우선 Settings 창을 열고 Build, Execution, Deployment > Compiler > Java Compiler 메뉴를 들어가보면 일부 모듈의 Target bytecode version이 다른 것을 볼 수 있다. 저걸 수정해주면된다. Target.. 2022. 6. 23. 윈도우에 Maven 설치하는 방법 윈도우 환경에 Maven을 설치해보자. 목차 Maven 설치 우선 Maven 다운로드 페이지로 접속한다. 다운로드 페이지 : https://maven.apache.org/download.cgi Maven – Download Apache Maven Downloading Apache Maven 3.8.6 Apache Maven 3.8.6 is the latest release and recommended version for all users. The currently selected download mirror is https://dlcdn.apache.org/. If you encounter a problem with this mirror, please select another mirror. I mav.. 2022. 6. 20. 윈도우에 NPM(Node js) 설치하기 윈도우 운영체제에 node js를 설치해보자. 우선 설치 파일을 다운로드하기 위해 node js 사이트로 접속하자. https://nodejs.org/en/download/ Download | Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org node js 다운로드 페이지에 접속하면 운영체제 별 설치 파일을 다운로드 할 수 있다. LTS 탭에서는 좀 더 안정적인 버전을 받을 수 있고 Current 탭에서는 최신 기능들이 반영되어 있는 버전을 다운로드 할 수 있다. 다운로드 페이지에서도 볼 수 있듯이 대부분은 LTS를 사용하면 된다. LTS 탭에서 윈도우 설치를 위한 .msi 파일을 다운로드하.. 2022. 6. 19. [Git] git add 에서 ‘warning: LF will be replaced by CRLF in’ 메시지 해결방법 윈도우 환경에서 PowerShell을 이용햇 git을 사용하다가 git add 명령을 실행하니 다음과 같은 경고 메시지가 발생했다. C:\\workspace> git add -A warning: LF will be replaced by CRLF in .idea/workspace.xml. The file will have its original line endings in your working directory 수정된 파일들을 스테이징하려고보니 LF가 CRLF로 대체된다는 경고 메시지를 뿌린다. LF와 CRLF LF는 Line-Feed 문자를 의미하며 CRLF는 Carriage-Return + Line-Feed 를 의미한다. LF는 리눅스와 맥 운영체제에서의 줄바꿈 문자(\n)로 사용되고 있으며, CRL.. 2022. 6. 18. [Linux] tcpdump 명령어 사용방법 tcpdump는 리눅스나 유닉스 계열 운영체제에서 네트워크 인터페이스를 통해 송수신되는 패킷의 정보를 출력해주는 프로그램이다. 특정 서버 장비에서 비정상적인 네트워크 입출력이 감지된 경우 문제의 원인을 파악하기 위해 tcpdump를 이용하면 된다. tcpdump는 libpcap 라이브러리를 이용해서 패킷을 캡쳐하고 확인된 정보를 파일로 저장한다. 따라서 확인된 정보를 wireshark 같은 분석 도구를 이용해 확인 할 수도 있다. tcpdump 설치 tcpdump는 yum을 통해 설치할 수 있다. $ sudo yum install tcpdump tcpdump 옵션 옵션 설명 -c 지정한 수 만큼 패킷을 수신 -i 지정한 인터페이스를 통하는 패킷들의 내역을 출력 -w 캡쳐한 패킷의 정보를 지정한 파일에 바.. 2022. 6. 17. 이전 1 ··· 13 14 15 16 17 18 19 ··· 52 다음