728x90
반응형

awk 5

[NM7] grep과 awk를 이용한 nonmem의 xml 파일에서 결과값 추출하기

NONMEM 7 부터는 결과값을 xml 파일로 저장해준다. 이를 활용하면 objective function value, elapsed time 등의 수치를 쉽게 추출할 수 있다. Linux bash, grep, awk 등에 대해서는 http://bahndal.egloos.com/category/%EB%A6%AC%EB%88%85%EC%8A%A4%20bash%20script 사이트에 잘 정리되어 있다. 먼저 결과 파일명이 FO.xml 인 경우, grep을 이용해서 total_cputime 값을 추출해보자. $ grep 'nm:total_cputime' FO.xml 0.124 grep을 이용하면 해당 검색어가 있는 줄을 통째로 추출해줌을 알 수 있다. 여기에 awk를 이용해서 결과값만 뽑아내보자. $ grep..

IT/개발 2023.08.17

리눅스 find, grep, awk 사용하기

1. find 명령어 : 주어진 조건을 검색하여 파일 찾기 find [패스] [옵션] [작업] find / find . 옵션 -name name 지정된 이름의 파일 찾기. 와일드 문자 사용 시, " 쓰기. -user name user 소유의 파일을 찾기. -type [bcdfls] 지정된 형식의 파일을 찾기. b:블록파일 c:문자 d:디렉터리 f:파일 l:링크파일 s:소켓 -size [+/-]n[bckw] 지정된 크기의 파일을 찾기 +n:n보다 크다 -n:n보다 작다 n:n이다. b:512byte k:kilobytes w:2byte k G M -size +10M -inum number 지정한 아이노드 번호와 파일을 찾는다. -print 표준 출력으로 검색된 파일명을 출력한다. -exec command{}..

리눅스 awk 사용법

awk awk : 데이터를 조작하고 리포트를 생성하기 위해 사용하는 언어입니다. 리눅스에서 사용하는 awk는 GNU 버전의 gawk로 심볼릭 링크되어 있습니다 간단한 연산자를 명령라인에서 사용할 수 있으며, 큰 프로그램을 위해 사용될 수 있습니다. awk는 데이터를 조작할 수 있기 때문에 쉘 스크립트에서 사용되는 필수 툴이며, 작은 데이터베이스를 관리하기 위해서도 필수입니다 Alfred Aho, Peter Weinberger, Brian Kernighan 3명이 만들었는데 이들의 이름 이니셜을 가져와서 awk라고 부릅니다 awk 프로그래밍 형식 awk 명령어를 입력한 다음, 작은따옴표로 둘러싸인 패턴이나 액션을 입력하고 마지막엔 입력 파일 이름. 파일 이름을 지정하지 않으면 키보드 입력에 의한 표준 입력..

[Linux] kill 프로세스를 '안전하게' 종료시켜보자

kill 명령어는 이름 때문에 프로세스를 강제로 종료시키는 명령어로 오해를 사기 쉬운데 실제로는 프로세스에 시그널(signal)을 보내는 명령어입니다. 이름이 kill 인 이유는 어떤 시그널을 보낼 지 지정하지 않으면 기본적으로 SIGTERM 시그널을 보내게 되는데 SIGTERM의 기본 동작이 프로그램 종료이기 때문입니다. 물론 프로세스에 SIGKILL 시그널을 보내 강제로 종료시킬 수도 있습니다. 그렇지만 일반적인 상황에서 SIGKILL 시그널을 보내는 것은 권장되지 않습니다. 본래 프로그램을 설계 할 때 대부분의 경우 종료 시그널을 받았을 때 처리하고 있던 데이터가 안전하게 정리 될 수 있도록 설계합니다. SIGTERM, SIGINT 등의 종료 시그널에 대해 시그널 핸들러(handler)를 등록하여 ..

ps에서 pid 목록만 가져와서 kill하기 [GAWK]

1. 원하는 프로세스 목록만 가져오기 - ps, grep 2. 프로세스 목록에서 pid만 가져오기 - AWK (GAWK) 3. kill 명령어로 한번에 프로세스 종료하기 4. Shell script를 이용하여 한번에 종료하기 작업할게 많아서 R이라는 프로그램을 거의 40개 가량 돌려야 할 때가 있었습니다. 근데 하나 실수한게 있어서 이 40개나 되는 프로세스를 다 죽여야하게 됐는데, nohup 백그라운드로 실행시키는 바람에 kill이라는 명령어로 하나 하나 다 따로 죽여야 하는 상황이 됐네요. Fig.1 ps -elf | grep sosal | grep exec (스압 --;) 1. 원하는 프로세스 목록만 가져오기 - ps, grep 40개를 하나하나 프로세스 아이디(pid)를 다 치기에는 너무 귀찮으니..

728x90
반응형