awkでの配列とsplit関数について
サーバ運用(ランキング)


blogram投票ボタン



awk 配列 split関数 awk での配列とsplit関数

awk 組み込み関数 split関数

    split( Str, Array, Sep)

    string :配列の文字列
    array :配列名
    sep :セパレータ、区切文字
    関数の値 :配列のインデックス数

【引数】
上記のとおり3つ受け取ります。

【動作】
1.区切文字は、引数のsepを使う。
2.stringは、区切文字sepでフィールドに区切る。
3.それぞれのフィールドを配列arrayに格納する。
4.関数の値として、配列の要素数を返す。
5.もしsepが省略されている場合は、フィールド・セパレータFSを使う。

例:split("aho,ahoman,desu", awk_array, ",")

例のsplit関数は3を返す。
table[1]="aho",table[2]="ahoman",table[3]="desu" になります。


awk 配列 インデックス数 表示
awk 'BEGIN {
print split("awk_array_1,awk_array_2,awk_array_",array,",")}'

1.split関数は、配列arrayのインデックスの数を表示します。
  ※awk コマンドで配列を使うときは、宣言はしません。

awk コマンド 実行例 spilt関数により、配列のインデックス数:3を返します。
bash$ awk 'BEGIN {
> print split("awk_array_1,awk_array_2,awk_array_",array,",")}'
3

●awk 配列 表示 例
awk 'BEGIN {
record = "awk_array_1,awk_array_2,awk_array_3";
split(record,array,",")}
END { for ( i in array ) {print array[i]}}' /dev/null

1.split関数で配列arrayを読み込み
2.forループで配列arrayを表示


●awk 配列 実行 例
bash$ awk 'BEGIN {
> record = "awk_array_1,awk_array_2,awk_array_3";
> split(record,array,",")}
> END { for ( i in array ) {print array[i]}}' /dev/null
awk_array_1
awk_array_2
awk_array_3



サーバ構築(ランキング)を見る。



トラックバック(0)

このブログ記事を参照しているブログ一覧: awk 配列 split関数 awkでの配列とsplit関数

このブログ記事に対するトラックバックURL: http://websky21.com/MT/mt-tb.cgi/1253