이 블로그 검색

2018년 10월 21일 일요일

python No such file or directory 발생 시

python 스크립트를 다음처럼 shebang 을 가진 것으로 작성하고
 
#!/usr/bin/env python
....
 
해당 스크립트(test.py 라고 가정)를  수행시 'No such file or directory' 에러가 발생한다.
그러나 python test.py 로 실행 하는 경우에는 문제 없이 동작하는 경우,
해당 file format 이 dos 인지 확인해본다. 
윈도우에서 작성해서 리눅스에서 구동하는 경우에 이런 문제가 발생된다.

vi 로 열어서  :set ff 로 확인해보고, unix 가 아닌 경우엔
:set ff=unix   수행하여 변경한다. 
전혀 틀린 맥락의 오류가 발생되어 정리해본다.
 

2018년 9월 27일 목요일

nerdtree euc-kr 환경에서 사용하기

nerdtree euc-kr 환경에서 utf8 환경인 것처럼 사용하기 위한 꼼수이다.
항상 vim + nerdtree 를 조합해서 작업하고 있고 nerdtree없이 작업하는것은 매우 끔찍한 시간이 될거 같다.  그런데 최근 새로 일하게 된 곳의  서버는 euc-kr 로 설정이 된 상태이다 (LC_CTYPE=ko_KR.eucKR). 이 환경에서는  nerdtree 플러그인이 제대로 동작하지 않는다 (utf8 에서 정상동작)

1.  터미널 세션만 변경하고 ~/.vimrc 를 수정하는 방법

열려 있는 터미널에서만 환경변수를 다음을 실행하여 변경하고,
export LANG=ko_KR.utf8
export LC_CTYPE=ko_KR.utf8 

~/.vimrc 에 다음처럼 설정해 주고,  
set encoding=utf-8

~/.vim 에 nerdtree 설치하면 사용할수는 있으나, 이것은 vi 사용자 모두에게 영향을 주고, 다른 사용자로 부터 욕을 먹는 경우가 발생한다(아래 설명 참조).


2.  그래서 방법을 찾다가  다음처럼 사용 중인데 나름 괜찮은 듯하다. vim 기동시 나만의 설정을 가지고 동작되게 한다.

2018년 1월 27일 토요일

vim + 정규식을 이용한 smi 파일 일괄 수정

주말이라서 영화를 받았는데,smi 파일은 있는데 자막이 안나온다. 좋아하는 영환데...
smi 파일을 열어보니, 뭔가 알수 없는 규칙으로 작성되있다.

2018년 1월 10일 수요일

libcurl POST 한글 encoding

curl 프로그램을 사용하여 POST 전송 시, 한글 데이터를 endcoding 해서 전송하는 방법은 다음과 같다.

curl -d "NAME1=test data" --data-urlencode "NAME2=한글데이터"  http://xxx.yyy.zzz

-d 옵션으로 여러번 지정을 해도 curl이 merge해줘서 전달되는 데이터는 "NAME1=test data&NAME2=한글데이터" 이 된다. URL-encoding 이 필요한 값은 -d 대신 --data-urlencode  로 지정 해 준다.

한편 c++ 에서 libcurl을 사용하여 동일한 작업을 수행하려면 다음처럼 하면 된다.