1. 去掉某字符串前面所有的字符
test 1
aaaaatest 2
test 3
tesbbbbbtest test 4
每行去掉test前面所有字符之后,输出:
test 1
test 2
test 3
test test 4
处理:
awk -F‘test‘ -vOFS="test" ‘{$1="";$1=$1}1‘ file
awk ‘{match($0,"test");print substr($0,RSTART)}‘ file
解析:
这两种处理方法都很好,第一种是利用test作为分隔符,然后把第一个字段赋值为空,也是就是第一个test前面的字符。同时,输出的字段的分隔符还必须是test字符串。
第二种方法的话首先查找到test字符串的位置,然后这时候RSTART的变量的值就是test的开始的位置,而后利用substr函数从此处开始到结束位置。
2. 多个分隔符
awk -F ‘[ ;K]+‘ ‘{print $2}‘ // 以一个或多个 空格、逗号 和大写字母K为分隔符,分隔,并打印出第二个字符段
原文:https://www.cnblogs.com/clovershell/p/11504946.html