📅  最后修改于: 2023-12-03 14:59:26.072000             🧑  作者: Mango
本文将针对 Shell-Bash 中的 awk 命令,介绍如何利用 awk 打印特定字段中非空白的行。
awk 命令可以用于文本处理,它可以按照指定的字段分隔符对文本进行分割,并对每个字段执行相应的操作。对于每一行文本,awk 会执行一次脚本,并输出相应的结果。
有时候我们需要从一份文本中提取出一些非空白的字段,可以利用 awk 命令来完成。
假设我们有一份名为 file.txt 的文本文件,其中包含了以下内容:
ID Name Age
001 Jack 20
002 Rose
003 Tom 25
004 Kate
现在我们需要提取出第三列非空白的行,可以使用以下命令:
awk 'NF==3 && $3!~/\s/{print}' file.txt
其中,NF 表示该行字段数,$3 表示第三个字段,~ 表示匹配,\s 表示空白字符,! 表示取反,{print} 表示打印该行。
执行结果如下:
ID Name Age
001 Jack 20
003 Tom 25
利用 awk 命令可以方便地从文本中提取出我们需要的信息,并进行适当的处理和操作。在实际应用中,我们可以通过 awk 命令来实现复杂的文本处理和数据提取功能。