본문 바로가기

awk5

AWK 명령어 기초 (두개 텍스트 파일 조건 합치기) AWKawk는 직접 사용자로부터 입력을 받거나 아니면 지정한 파일을 가공하여 표준 출력한다 표준 출력을 리다이렉션할 수 있다 사용법awk [옵션] '스크립트' [-v 변수=값] [파일(들)]awk [옵션] -f 스크립트 파일 [-v 변수=값] [파일(들)]cf) 편집 스크립트 파일의 사용법ed : ed -s(script) sourcefile outputfileawk : awk -f(file) scriptfile sourcefile > outputfile옵션-Fc : field separator 지정c는 필드 사이를 구분하는 구분자이다 직접 지정하지 않으면 공백을 기준으로 한다 시스템 변수 FS를 지정하는 것.. 2012. 10. 15.
GNU Awk 사용자 가이드/함수 함수란 입력받은 Input을 일정한 규칙에 따라 처리한 뒤 Output을 내놓는 것이다. 예를 들어 어떤 함수 x에 input을 넣었을 때 input값에 1만큼 증가한 값이 output으로 나온다면 이 함수는 +1을 해주는 함수라고 할 수 있다. awk에서 함수는 보통 다음과 같은 기본형을 갖는다function(input1,input2,...) return input의 개수는 함수마다 다르며, 사용자 정의 함수의 경우 사용자가 필요한 만큼 지정해 줄 수 있다.awk에서는 함수가 크게 두 부류로 나누어진다. 하나는 awk에 이미 내장되어 있는 내장함수Built-In Function인데, 이 함수들은 사용자가 원하는 경우 언제든지 불러와서 사용할 수 있다. 다른 하나는 사용자 정의 함수로서, 사용자가 프로그.. 2012. 8. 28.
GNU Awk 사용자 가이드/변수 Variable의 개념변수란 data를 비롯하여 프로그램이 처리하는 값의 이름을 가리키는 말입니다. 예를 들어 아래와 같은 자료가 있다고 합시다.키몸무게시력180681.2175600.4168552.0이 때 키, 몸무게, 시력과 같이 data를 분류하고 설명하는 이름들을 변수라고 할 수 있습니다. 만약 각각의 항목에 대하여 평균을 구한다고 하면 '평균'이란 요소 역시 변수의 하나가 됩니다.awk에서는 변수를 크게 두 종류로 나눌 수 있습니다. 하나는 사용자가 임의로 자유롭게 만들 수 있는 사용자 정의 변수입니다. 프로그램의 목적에 따라서 사용자가 마음에 들어하는 이름으로 변수를 만들 수 있습니다. 다른 하나는 내장변수(Built-In Variable)란 것으로, awk에서 이미 만들어놓은 변수들입니다. 이.. 2012. 8. 28.
Bash: Pass Shell Variables To awk How do I pass shell variables to awk command or script under UNIX like operating systems? The -v option can be used to pass shell variables to awk command. Consider the following simple example, root="/webroot" echo | awk -v r=$root '{ print "shell root value - " r}' In this example search file using awk as follows: #!/bin/bash # Usage : Search word using awk for given file. # Syntax: ./script ".. 2012. 7. 18.
awk 명령어 필드구분 및 필드수 1. awk 필드를 구분하는 방법은 두가지이다. 하나는 FS를 세팅해주는 방법이고, 하나는 -F옵션을 통해 주는 방법이다. 주로 FS로는 여러가지 seperator를 설정하고 -F로는 하나의 seperator를 설정한다. FS를 세팅할땐, awk 'BEGIN { FS = ", \t" } ; { print $2 }' -> makes every area of an input line that consists of a comma followed by a space and a TAB into a field separator. 이렇게 설정이 가능하나, -F로 설정할 땐 quoting없이 -F\t 로 세팅하면 안된다, \가 쉘에서 다음 라인으로 이어진다는걸 의미하기 때문에 escape character 이기 때문에.. 2012. 6. 29.