分隔符之间的Grep?

时间:2016-07-04 21:41:37

标签: grep

我想grep一个文本文件,只返回包含在分隔符之间找到的字符串的行。是否有可能在分隔符之间进行grep?

文字看起来像这样:

Hello;Goodbye;100;200;
Hello;Goodbye;200;100;
Hello;Goodbye;300;400;
Hello;Goodbye;400;300;

我想在最后一个分隔符之间进行grep - 例如,我想要为#200;' 200'但仅限于最后一列,因此仅返回:

  

您好;再见; 100; 200;

这可能吗?谢谢你的帮助! S上。

2 个答案:

答案 0 :(得分:2)

Grep支持各种正则表达式。在默认模式下,$匹配一行的结尾。

grep ';200;$' test.txt

有关使用grep可以执行的更高级模式,请参阅this

答案 1 :(得分:1)

如果你不受grep的约束,你可以使用eg。 AWK,你可以有更复杂的过滤。对于您的问题,这会过滤掉您想要的行

awk -F';' '$4=="200" {print}' filename
  • -F&#39 ;;'定义分隔符
  • $ 4定义列号
  • {print}打印出整行