首页 > Linux教程 > 正文

[awk] 用-F指定多分隔符及正则表达式

命令行选项 -F"[@ /t]" 告诉awk @, 空格和Tab都是字段分隔符,例如:

awk -F"[@ /t]" '{print $2,$3}' test

以@,空格,Tab键分割test文件的每一行,并输出第二、第三列。

awk '$2~/^(126|yahoo)/{print $2, $3}' test

如果改行的第二个字段以"123"或"yahoo"开始,则输出改行的第二、第三列。

awk '$1~/[0-9][0-9]$/{print $1, $3}' test

如果改行的最后两个字段以数字结束,则输出改行的第一、第三列。

awk '/mail/{print $0}' test 

输出test文件中含有"mail"字符串的行

$awk '$2~/mail/{print $0}' test

输出test文件中第二个字段含有"mail"字符串的行

$awk '$2 == "gmail.com"{$1 = "ggg";print}' test

输出test文件中第二个字段是"gmail.com"的行,并把改行第一列改为"ggg"

awk '$2 == "gmail.com"{$1 = "ggg"}{print}' test

输出test文件中所有行,并且如果第二个字段是"gmail.com",把改行第一列改为"ggg"

awk '{IGNORECASE=1;if($2 ~/^[a-z]/&& $2~/net$/){print $0}}' test

打开test文件,忽略字母大小写,如果第二字段以[a-z]开头,并以"net"结尾,则输出该行。


上一篇:Linux时间修改及CMOS时间修改同步的4种方法
下一篇:保护你自己免受 curl | sh 的危害

PythonTab微信公众号:

Python技术交流互助群 ( 请勿加多个群 ):

群1: 87464755

群2: 333646237

群3: 318130924

群4: 385100854