반달가면

Sources

Posts

427 posts

[bash: awk] 현재 행에서 특정 문자열이 존재할 때 바로 이전 행을 출력하기

반달가면|2017년 2월 27일

텍스트 파일에서 특정 문자열을 검색해야 하는데, 해당 문자열이 출현했을 경우 바로 이전 행만 출력해야 할 경우에 awk를 이용해서 가능하다. 조건문을 사용해야 하므로 좀 복잡하긴 하지만, 어쨌든 가능. 개인적으로 이 문제에 대한 고민은 여러 행으로 이루어진 텍스트 파일에서 특정 부분을 따옴표(")로 묶어주어야 하는 문제 때문에 시작되었다. 어떤 형태의 문제였는지 예를 들자면 아래와 같다. john과 jane의 대화를 기록한 my_dialog.txt 파일의 내용이 아래와 같은 상황이다. # 파일 내용 확인 cat my_dialog.txt john: hello, jane. how are you? jane: not bad, john. thanks 위의 내용을 아래와 같이 바

AMD 라이젠(Ryzen) CPU 벤치마크 유출

반달가면|2017년 2월 24일

원문 기사는 여기로 AMD의 사활이 걸린 라이젠(Ryzen) CPU의 출시가 임박하면서 벤치마크도 유출된 모양이다. 일단 라이젠 CPU 제품 구성은 대략 아래와 같다. 라이젠 7 1800X: 8코어/16스레드, 16MB L3 캐쉬, 기본클럭 3.6GHz, 터보 4GHz, TDP 95W 라이젠 7 1700X: 8코어/16스레드, 16MB L3 캐쉬, 기본클럭 3.4GHz, 터보 3.8GHz, TDP 95W 라이젠 7 1700: 8코어/16스레드, 16MB L3 캐쉬, 기본클럭 3GHz, 터보 3.7GHz, TDP 65W 라이젠 5 1600X: 6코어/12스레드, 16MB L3 캐쉬, 기본클럭 3.3GHz, 터보 3.7GHz, TDP 95W 라이젠 5 1500: 6코어/12

[bash: source] 스크립트에서 환경설정 파일 활용하기

반달가면|2017년 2월 20일

셸 스크립트에서 환경설정 파일을 읽어서 변수값을 지정하고 싶을 때 source 명령을 활용할 수 있다. source 명령은 현재의 shell 프로세스에서(즉, fork하지 않고) 지정된 파일에 있는 명령을 실행한다. 아래의 예시를 보자. # test.ini 파일 내용 확인 cat test.ini MY_VALUE=10 MY_NAME="john" # test.ini 파일의 내용을 현재 shell에서 실행 source test.ini # 변수 설정 결과 확인: MY_VALUE, MY_NAME 출력 echo $MY_VALUE 10 echo $MY_NAME john 변수 MY_VALUE, MY_NAME의 값을 test.ini 파일에서 정하고, 이것을 읽어서 실행함으로써 변수값이 설

리눅스에서 루트(root)에 의한 ssh 접속 허용

반달가면|2017년 2월 15일

데스크탑 리눅스 배포판의 경우 기본적으로 루트에 의한 ssh 접속을 막도록 설정되어 있는 경우가 꽤 있는데, 루트 계정을 허용해야 한다면 /etc/ssh/sshd_config 파일을 편집해서 관련 설정을 변경해야 한다. 우분투 계열 배포판 기준이나 다른 배포판도 비슷할 것이라 생각된다. 터미널창에서 아래와 같이 작업. 만약 ssh 데몬이 설치되어 있지 않다면 설치부터 해 주자. 데비안/우분투 계열 배포판 기준이다. # ssh 데몬 설치 sudo apt-get install ssh 이제 /etc/ssh/sshd_config 파일을 루트 권한으로 편집한다. sudo vi /etc/ssh/sshd_config 파일 내용중에 PermitRootLogin 항목을 찾아서 아래와 같이 변경

리눅스에서 iso 이미지 파일로부터 부팅 가능한 USB메모리 만들기

반달가면|2017년 2월 13일

리눅스 또는 윈도우 iso 이미지 파일로부터 부팅 가능한 USB메모리를 만드는 방법이다. 터미널창에서 명령어로 쉽게 가능하다(데비안/우분투 기준). 우선 USB메모리를 연결한 후, 장치명을 확인하자. 터미널창에서 아래와 같이 입력. # 장치 목록 표시 lsblk 출력된 결과로부터 USB메모리에 대응하는 장치명을 파악한다. 통상 /dev/sdc, /dev/sdd 이런식이 될 것이다. 여기서는 장치명이 /dev/sdc라고 가정해 보자. 만약 해당 USB메모리가 마운트 되어 있다면 해제해야 한다. 디스크 빈 공간을 확인하기 위한 df 명령으로 간단히 확인 가능하다. 만약 마운트되어 있다면 장치명과 마운트된 디렉토리가 표시될 것이다. # 디스크 빈 공간 확인 df # /dev/s