関数書式 | 意味 |
---|---|
sin(r) | ラジアン(r)の正弦 |
cos(r) | ラジアン(r)の余弦 |
sqrt(n) | n の平方根 |
log(n) | n 自然対数 |
int(f) | f を越えない整数を返す |
rand() | 0以上1未満の乱数を返す。なお初期化は srand() による |
例題: 0〜3.14 まで 0.06[rad] 刻みの正弦を得る
$ awk 'END{for(r=0.0;r<3.14;r+=0.06) print r "\t" sin(r)}' /dev/null 0 0 0.06 0.059964 0.12 0.119712 0.18 0.17903 0.24 0.237703 :
関数書式 | 意味 |
---|---|
[g]sub(ptn,str[,data]) | 変数data(省略時 $0)の正規表現ptnで一致する文字列をstrに置換。 gsub は繰り返し置換。 |
index(str1,str2) | 文字列str1に部分文字列str2が初めて登場する位置を返す |
length(str) | 文字列strの長さ |
substr(str,begin[,len]) | 文字列strの開始位置begin,長さlen(省略時はstrの最後まで)部分文字列を返す |
toupper(str) | 文字列strを大文字に変換 |
tolower(str) | 文字列strを小文字に変換 |
簡単な例題集
$ uname -a OSF1 ws-1.rcnp.osaka-u.ac.jp V4.0 464 alpha $ uname -a | awk '{print tolower($0)}' osf1 ws-1.rcnp.osaka-u.ac.jp v4.0 464 alpha $ uname -a | awk '{print toupper($0)}' OSF1 WS-1.RCNP.OSAKA-U.AC.JP V4.0 464 ALPHA
$ uname -a | awk '{gsub("[0-9]","");print}' OSF ws-.rcnp.osaka-u.ac.jp V. alpha
【書式】 substr( 文字列, 開始位置 [,長さ] ) $ nawk '{print substr($0,1,5) }' /etc/passwd root: nobod nobod daemo bin:* uucp:
【書式】 index( 文字列, 部分文字列 ) $ nawk '{ printf "[%d]%s\n", index( "Digital UNIX", $0),$0 }' a [6]a A [0]A UNIX [9]UNIX ^D