我正在尝试打印具有匹配模式的相同字符的文件中的所有行。这是我的模式 -
CurrentPrincipal[MRC]
CurrentPrincipalLegalEventAssociation
在文件中我有如下行
823,agg.listgroup,CurrentPrincipal[MRC],CompanyElementDefinition
d4f170,atom.list,CurrentPrincipal[MRC][Type][*],CompanyElementDefinition
1097,agg.listgroup,CurrentPrincipalLegalEventAssociation,CompanyElementDefinition
c755ad,atom.list,CurrentPrincipal[LegalEventAssociation][Type][*],CompanyElementDefinition
8798c3,atom.list,CurrentPrincipal[MailingAddressStreetLine1][*],CompanyElementDefinition
我正在迭代我的模式并从文件中打印其匹配行。我需要的是,当我迭代我的模式时,CurrentPrincipal[MRC]
我应该只得到它的匹配行
d4f170,atom.list,CurrentPrincipal[MRC][Type][*],CompanyElementDefinition
当模式是CurrentPrincipalLegalEventAssociation
我应该只得到
c755ad,atom.list,CurrentPrincipal[LegalEventAssociation][Type][*],CompanyElementDefinition
[
]
我的要求是在匹配模式时忽略行中的 。我已尽力提出我的问题。如果需要我提供任何其他信息,请告诉我。提前致谢。
答案1
您似乎希望按字面意思处理[
和字符,而不是指示字符范围。]
你可以这样做逃跑他们:
grep 'CurrentPrincipal\[LegalEventAssociation\]' file
前任。给定:
$ cat file
823,agg.listgroup,CurrentPrincipal[MRC],CompanyElementDefinition
d4f170,atom.list,CurrentPrincipal[MRC][Type][*],CompanyElementDefinition
1097,agg.listgroup,CurrentPrincipalLegalEventAssociation,CompanyElementDefinition
c755ad,atom.list,CurrentPrincipal[LegalEventAssociation][Type][*],CompanyElementDefinition
8798c3,atom.list,CurrentPrincipal[MailingAddressStreetLine1][*],CompanyElementDefinition
然后
$ grep 'CurrentPrincipal\[LegalEventAssociation\]' file
c755ad,atom.list,CurrentPrincipal[LegalEventAssociation][Type][*],CompanyElementDefinition
或者使用-F
or--fixed-strings
选项告诉 grep 按字面意思处理所有字符:
$ grep -F 'CurrentPrincipal[LegalEventAssociation]' file
c755ad,atom.list,CurrentPrincipal[LegalEventAssociation][Type][*],CompanyElementDefinition
答案2
答案3
使用以下命令,文件输出出现在文件中模式搜索行之后的下一行中。
sed -n '/CurrentPrincipal\[MRC\]/p' filename | sed -n '2p'
输出
d4f170,atom.list,CurrentPrincipal[MRC][Type][*],CompanyElementDefinition
sed -n '/CurrentPrincipalLegalEventAssociation/,+1p' l.txt | sed -n '2p'
输出
c755ad,atom.list,CurrentPrincipal[LegalEventAssociation][Type][*],CompanyElementDefinition