Shell 2

직전 명령의 마지막 인자 재활용하기 : !$

리눅스 콘솔에서 명령을 이것저것 치다 보면 방금 막 실행한 명령의 마지막 인자를 대상으로 다음 명령을 실행할 때가 많습니다. 예를 들어, raw.txt 파일의 이름을 train.txt로 바꾸고, train.txt 파일의 내용 중 "하늘"이 포함된 줄만 "sentences_with_sky_ko_KR.txt"로 옮기고, sentences_with_sky_ko_KR.txt의 내용을 cat으로 출력 하는 단계를 가정해보겠습니다. 일반적인 방법으로는, $ mv raw.txt train.txt $ grep "하늘" train.txt > sentences_with_sky_ko_KR.txt $ cat sentences_with_sky_ko_KR.txt 이렇게 합니다. Tab 키를 이용해서 자동 완성해가면서 하면 상대적..

Linux 2020.05.06

Shell 명령의 결과를 받아오고 싶을 때

파이썬 코딩을 하다 보면 이미 필요한 기능이 리눅스 명령으로 존재할 때가 있습니다. 가끔은 리눅스 명령을 실행해서 결과를 가져오는 것이 편할 때가 있죠. 물론 이 방법은 해당 명령이 해당 시스템에 설치되어야 있어야 하기 때문에 이식성이 조금 떨어집니다. 하지만 적절히 필요한 곳에 쓴다면 개발 속도를 확 높여 줄 수 있습니다. 예를 들어 어떤 텍스트 파일이 몇 줄인지 궁금할 때가 있습니다. 파일을 열고, 줄 별로 읽어서 카운트를 할 수도 있지만, 리눅스의 wc 명령을 간편하게 이용할 수도 있습니다. 속도도 매우 빠르고요. import subprocess result = subprocess.run(['wc', '-l', 'wiki+namu.raw.txt'], stdout=subprocess.PIPE) res..

Python 2020.05.01