[bash: awk] 현재 행에서 특정 문자열이 존재할 때 바로 이전 행을 출력하기
By 반달가면 | 2017년 2월 27일 |
텍스트 파일에서 특정 문자열을 검색해야 하는데, 해당 문자열이 출현했을 경우 바로 이전 행만 출력해야 할 경우에 awk를 이용해서 가능하다. 조건문을 사용해야 하므로 좀 복잡하긴 하지만, 어쨌든 가능. 개인적으로 이 문제에 대한 고민은 여러 행으로 이루어진 텍스트 파일에서 특정 부분을 따옴표(")로 묶어주어야 하는 문제 때문에 시작되었다. 어떤 형태의 문제였는지 예를 들자면 아래와 같다. john과 jane의 대화를 기록한 my_dialog.txt 파일의 내용이 아래와 같은 상황이다. # 파일 내용 확인 cat my_dialog.txt john: hello, jane. how are you? jane: not bad, john. thanks 위의 내용을 아래와 같이 바
리눅스 민트에서 NFS 서버 설정
By 반달가면 | 2019년 1월 7일 |
리눅스 민트에서 NFS(Network File System, 네트워크 파일 시스템) 서버 설정 절차다. 리눅스 민트가 우분투 계열 배포판이므로, 데비안/우분투 계열 배포판은 다 비슷할 것이다. 우선 nfs-kernel-server 패키지를 설치하자. 터미널창에서 아래와 같이 작업 # S/W 저장소 정보 갱신 sudo apt-get update # nfs-kernel-server 설치 sudo apt-get install nfs-kernel-server NFS로 공유할 디렉토리를 만들자. 여기서는 /var/nfs_exports로 했다. 접근 권한은 별도로 설정하므로 디렉토리 권한은 모두 접근 가능한 777로 설정. # 디렉토리 생성(/var 디렉토리 하위이므로 root 권한 필요
ukuu - 우분투 커널 업데이트 유틸리티
By 반달가면 | 2019년 6월 14일 |
ukuu(Ubuntu Kernel Update Utility)는 우분투 계열 리눅스 배포판에서 커널 업데이트를 쉽게 해 주는 GUI 프로그램이다. 터미널창에서 복잡한 작업을 할 필요 없이 클릭 몇번으로 간편하게 커널을 변경할 수 있다. 설치는 터미널창에서 아래와 같이 작업하면 된다. # ukuu 저장소 추가 sudo add-apt-repository ppa:teejee2008/ppa # S/W 저장소 갱신 sudo apt-get update # ukuu 설치 sudo apt-get install ukuu 실행은 아래와 같이 하면 되겠다. # ukuu 실행 ukuu-gtk 실행창이 나오면, 설치하고자 하는 커널 버전을 선택하고 "install" 버튼을 클릭하
리눅스 bash 스크립트에서 변수/배열/연관배열 삭제/초기화
By 반달가면 | 2020년 3월 2일 |
리눅스 bash 스크립트에서 변수 또는 배열을 삭제하는 명령은 unset이다. 우선 변수에 대해서 아래의 예시를 보자. # 문자열 "abc"를 변수 var에 할당 var="abc" # 변수 var에 할당된 내용 출력 echo "$var" abc # 변수 var 삭제 unset var # 변수 var에 할당된 내용 출력 echo "$var" unset에서 지정하는 변수명 앞에 "$" 표시가 붙지 않는다는 점에 유의. 만약 "$"를 붙이면 해당 변수명이 아니라 변수에 할당된 값이 unset의 인자(argument)로 지정되기 때문이다. 배열에 대한 삭제/초기화 작업도 같은 요령이다. 우선, 리눅스 bash 스크립트에서 배열(array)을 활용하는 기본적인 방법은 이