awk内置函数

时间:2023-03-09 08:27:00
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。设置RSTARTRLENGTH的值
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