복잡한 프로시저를 포함하는 AWK 프로그램 파일이 있다고 가정해 보겠습니다.예제.awk. 현재 레코드의 전체 행이 아닌 특정 열에 변수를 할당하려고 합니다.
#!/usr/bin/awk -f
BEGIN {...}
... {...}
...
END {
...
var1 = ... # do something
print "var1 ... " var1
var2 = ⬛⬛⬛⬛⬛⬛
print "var2 ... " var2
}
var1
파일 입력과는 아무 관련이 없습니다 . 셸에서 다음 프로그램을 실행하세요.
awk -f ./example.awk ./text.txt
...
var1 ... I like chocolate cake
var2 ... chocolate
이 예에 표시된 대로 var2
string은 세 번째 필드/열입니다. UNIX 쉘에서는 다음과 같을 수 있습니다.
var2=$(cut -d ' ' -f 3 <<< "$var1")
var2
AWK에서 스크립트를 어떻게 작성하시겠습니까 ?
답변1
awk -v f=3 '
END {
var1 = "I like chocolate cake"
n = split(var1, a)
var2 = a[f]
print var1
print var2
}
' /dev/null
I like chocolate cake
chocolate