awk の変数

awk の変数名

awk では, ユーザが作ることのできる変数の命名規則は以下のようなものである:

1. 最初は英字からアンダーバー, すなわち下線 "_" で始まる.
2. 2 字以降は英字または数字とアンダーバー ("_") が 0 個以上続く.
3. 英字の大文字と小文字は区別される.
4. awk ですでに独自の意味で使われている語 (予約語という) は使えない.

正しい変数名は次のようなものは:

x, y, x1, y2, file_name, _pos, ...

変数作成と値の代入

scpt4_1.awk

#!/usr/local/bin/gawk -f

BEGIN{
    x = 2
    y = 3
    z = x + y
    str = "wtopia" # 文字列はダブルクォーテーションで囲むことを忘れないように
    print x "+" y "=" z
    print  str
}

scpt4_1.awk の実行結果は:

[cactus:~/code_awk/tuts]% ./scpt4_1.awk
2+3=5
wtopia

awk の変数は, 数値と文字列の2つの値を持つ

scpt4_2.awk

#!/usr/local/bin/gawk -f

BEGIN{
    x = 2
    y = 3
    
    v = x y # x と y は文字列として連結される
    w = x + y # x と y は数値として加算される
    
    print "v = " v
    print "w = " w
}

scpt4_2.awk の実行結果は:

[cactus:~/code_awk/tuts]% ./scpt4_2.awk
v = 23
w = 5