式において, 数値としての大小や等, 不等を表す記号を算術比較演算子と呼ぶ:
<
<=
>
>=
!=
==
scpt12_1.awk
1 2 3 4 5 6 7 8 9 10 | #!/usr/local/bin/gawk -f
# scpt12_1.awk
BEGIN{
str = "programming"
if( length(str) != 10 )
print str " の長さは 10 バイトではない"
else
print str " の長さは 10 バイトである"
}
|
scpt12_1.awk の実行結果は:
[cactus:~/code_awk/tuts]% ./scpt12_1.awk
programming の長さは 10 バイトではない
data12_2.txt
A君 60
B君 70
C君 80
E君 30
F君 20
G君 100
H君 33
I君 61
J君 59
K君 67
scpt12_2.awk
#!/usr/local/bin/gawk -f
# scpt12_2.awk
{
if($2 >= 60)
print $0 # print と書くだけでもよい
}
scpt12_3.awk
1 2 3 4 5 6 7 8 9 10 | #!/usr/local/bin/gawk -f
# scpt12_1.awk
BEGIN{
str = "programming"
if( length(str) != 10 )
print str " の長さは 10 バイトではない"
else
print str " の長さは 10 バイトである"
}
|
scpt12_2.awk と scpt12_3.awk の実行結果は:
[cactus:~/code_awk/tuts]% ./scpt12_2.awk data12_2.txt
A君 60
B君 70
C君 80
G君 100
I君 61
K君 67
[cactus:~/code_awk/tuts]% ./scpt12_3.awk data12_2.txt
A君 60
B君 70
C君 80
G君 100
I君 61
K君 67
scpt7.txt
1 2 3 4 5 6 7 8 9 10 | apple egg
hat cat
money sky
absent boy
food note
way arrow
foot cap
value dog
home wall
tree sad
|
scpt7_1.awk
#!/usr/local/bin/gawk -f
# scpt7_1.awk
$2 ~ /^c/{
print FNR ":" $2 # 特殊変数 FNR は現在のファイルの入力レコード
}
scpt12_4.awk
#!/usr/local/bin/gawk -f
# scpt12_4.awk
{
if($2 ~ /^c/)
print FNR ":" $2
}
scpt7_1.awk と scpt12_4.awk の実行結果は:
[cactus:~/code_awk/tuts]% ./scpt7_1.awk scpt7.txt
2:cat
7:cap
[cactus:~/code_awk/tuts]% ./scpt12_4.awk scpt7.txt
2:cat
7:cap