我有一个CSV文件,我想过滤第19列有两个或更多字符的所有行.我知道各个部分,但无法弄清楚如何将它们粘在一起.首先,我必须抓住文件.以下打印第19列
awk -F "," '{print $19}' file.txt
Run Code Online (Sandbox Code Playgroud)
awk也有长度和ifs
而且我知道所有这些都必须用管子粘在一起.我只是陷入了确切的语法,因为我以前没有做过太多的bash编程.
一个AWK程序是一系列模式动作对,写成:
condition { action }
Run Code Online (Sandbox Code Playgroud)
该condition部分是您的过滤器.
例如,要获取所有行(第19列至少有2个字符):
$ awk -F, 'length($19)>1' file.txt
Run Code Online (Sandbox Code Playgroud)
当{action}部分缺失,则默认操作是打印记录.