如何用条件grep第三个逗号后的行

如何用条件grep第三个逗号后的行

我想查看第三个逗号后 4 位数字的文本行。

输入:

123456789012345,00,0000,000
111111111111111,00,0000,0000

输出:

111111111111111,00,0000,0000

答案1

您可以使用以下方法执行此操作awk

$ awk -F, 'length($4) == 4' file
111111111111111,00,0000,0000

答案2

即要匹配第三个逗号后的 4 位数字

awk -F, '$4~/^[0-9]{4}$/' file

答案3

要匹配仅包含十进制数字的行,然后是第三个逗号之后的行尾(没有其他内容,甚至后面不允许有逗号),使用grep

grep -xE '([^,]*,){3}[0-9]{4}' <file

相关内容