awk内置函数
gsub(r,s,t) | 在字符串t中,用字符串s替换和正则表达式r匹配的所有字符串。返回替换的个数。如果没有给出t,缺省为$0 |
index(s,t) | 返回s 中字符串t 的位置,不出现时为0 |
length(s) | 返回字符串s 的长度,当没有给出s时,返回$0的长度 |
match(s,r) | 返回r 在s 中出现的位置,不出现时为0。设置RSTART和RLENGTH的值 |
split(s,a,r) | 利用r 把s 分裂成数组a,返回元素的个数。如果没有给出r,则使用FS。数组分割和字段分割采用同样的方式 |
sprintf(fmt,expr_list) | 根据格式串fmt,返回经过格式编排的expr_list |
sub(r,s,t) | 在字符串t中用s替换正则表达式t的首次匹配。如果成功则返回1,否则返回0。如果没有给出t,默认为$0 |
substr(s,p,n) | 返回字符串s中从位置p开始最大长度为n的字串。如果没有给出n,返回从p开始剩余的字符串 |
tolower(s) | 将串s 中的大写字母改为小写,返回新串 |
toupper(s) | 将串s 中的小写字母改为大写,返回新串 |
gsub(r,s,t):
CODE
echo ababab | awk ‘gsub(/a/,"c")’ # cbcbcb
sub(r,s,t)
CODE
echo ababab | awk ’sub(/a/,"c")’ # cbabab
gsub(r,s,t):
CODE
echo ababab | awk ‘gsub(/a/,"c")’ # cbcbcb
sub(r,s,t)
CODE
echo ababab | awk ’sub(/a/,"c")’ # cbabab