uspTukubaiコマンドに関する様々な資料がここにあります。

 

 

魂内検索

DOCUMENTS

COMMAND

FORUM

UEC DOCS

VIDEO

 

ABC順リスト |  カテゴリ別リスト

(動画教材準備中)

calc

概要

calc : 指定したフィールドの直後にデータや式を挿入する awk コマンドの
         ラッパー

書式

Usage   : calc '<awk_exp>' <f> <file>
Version : Thu Aug 28 15:19:46 JST 2014

説明

<file> ファイルの第<f>フィールド直後に、awk 文法で記述した <awk_exp>
で指定されるデータあるいは計算式を挿入して、awk を実行します。
awk で記述すると煩雑になるフィールド間の値の"挿入"を簡易に行えます。


例1

$ cat data
0000000 浜地______ 50 F 91 59 20 76 54
0000001 鈴田______ 50 F 46 39 8  5  21
0000003 杉山______ 26 F 30 50 71 36 30
0000004 白土______ 40 M 58 71 20 10 6
0000005 崎村______ 50 F 82 79 16 21 80

$ calc '$5+$6+$7+$8+$9' 4 data > result
$ cat result
0000000 浜地______ 50 F 300 91 59 20 76 54
0000001 鈴田______ 50 F 119 46 39 8 5 21
0000003 杉山______ 26 F 217 30 50 71 36 30
0000004 白土______ 40 M 165 58 71 20 10 6
0000005 崎村______ 50 F 278 82 79 16 21 80


上記の例では、
$ awk '{print $1,$2,$3,$4,$5+$6+$7+$8+$9,$5,$6,$7,$8,$9}' data
と同じです。

例2

$ cat data
0000 浜地______
0001 鈴田______
0003 杉山______
0004 白土______
0005 崎村______

$ calc '"M"' 1 data > result
$ cat result
0000 M 浜地______
0001 M 鈴田______
0003 M 杉山______
0004 M 白土______
0005 M 崎村______

上記の例では、
$ awk '{print $1,"M",$2}' data
と同じです。

<備考>
calc コマンドは、
"/bin/awk",  "/usr/bin/awk",  "/usr/local/bin/awk",
"/bin/gawk", "/usr/bin/gawk", "/usr/local/bin/gawk"
"awk"
の順に調べ、最初に存在する awk  コマンドで実行されます。