awk是一种强大的文本处理工具,它可以用于从文件或标准输入中逐行读取数据,并对数据进行处理和分析。

打印文件的某一列

awk '{print $2}' file.txt

这个命令会打印出文件”file.txt”的第二列内容。

根据条件过滤行

awk '$3 > 50 {print $1, $3}' file.txt

这个命令会打印出文件”file.txt”中第三列大于50的行的第一列和第三列内容。

计算行数或列数

awk '$3 > 50 {print $1, $3}' file.txt

这个命令会打印出文件”file.txt”的总行数。

使用自定义分隔符

awk -F',' '{print $1, $3}' file.csv

这个命令会打印出以逗号为分隔符的CSV文件”file.csv”的第一列和第三列内容。

执行数学运算

awk '{sum += $1} END {print sum}' file.txt

这个命令会计算文件”file.txt”中第一列的总和并打印出结果。

使用脚本文件

awk -f script.awk file.txt

这个命令会执行名为”script.awk”的awk脚本文件,并将”file.txt”作为输入。

例如删除每一行第一个空格后面的内容

awk -i inplace '{sub(/ .*/, ""); print}' input.txt