查找和grep组的脚本

我正在努力编写bash脚本或python脚本以从文件中查找字符串。

例如,我需要搜索usrname4,如果找到了,则需要获取其组。在这种情况下,它是group1。由于文件格式比较棘手,因此我需要一些提示。

文件内容采用以下格式。

group1    (-,usrname1,abc.co.uk)\
          (-,xyz.co.uk)\
          (-,usrname2,usrname3,usrname4,usrname5,usrname6,usrname7,xyz.co.uk)\
group2    (-,usrname8,usrname9,usrname10,usrname11,usrname12,usrname13,usrname14,xyz.co.uk)\
wanghaitao1987 回答:查找和grep组的脚本

我添加了以下规范:

  • 可以通过查找以空格开头的行来找到组
  • 组名不能包含空格
  • 用户名多次出现时,仅查看第一个用户名
  • 搜索比赛前提到的最后一组

首先选择所有组和所有匹配的行。
从该组中查找第一个匹配项之前的最后一行,该行必须是该组。

usr=usrname4
grep -Eo "^[^ ]+|,${usr}," file | grep -B1 "," | head -1
本文链接:https://www.f2er.com/2700044.html

大家都在问