我有一个如下文件
'ABC'|filler|'Y'|'john/1'|'text'
'ABC'|filler|'Y'|'john1'|'te/xt'
'ABC'|filler|'N'|'mary/2'|'text'
'DEF'|filler|'N'|'jane/3'|'text'
我希望我的 grep 返回以下结果
'ABC'|filler|'Y'|john/1|'text'
'ABC'|filler|'N'|mary/2|'text'
其中条件是
- 包含单词 ABC
- 匹配“Y”或“N”的模式,并且管道后面应包含正斜杠
我目前陷入困境
wordY="'Y'|"
字N=“'N'|”
grep ABC 测试.txt | grep "$wordY|$wordN"
哪些正在返回
'ABC'|filler|'Y'|'john/1'|'text'
'ABC'|filler|'Y'|'john1'|'te/xt' //i do not want this
'ABC'|filler|'N'|'mary/2'|'text'
我如何添加命令以返回第四列中带有正斜杠的结果值?
答案1
使用grep
$ grep -E "^'ABC'\|[^|]*\|'(Y|N)'\|'[[:alpha:]]+/" input_file
'ABC'|filler|'Y'|'john/1'|'text'
'ABC'|filler|'N'|'mary/2'|'text'