Grep
如何使用包含單引號,管道和帶有/之後的模式的模式來grep單行?
我有一個文件如下
'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’|"
wordN="‘N’|"
grep ABC test.txt | grep" $ wordY| $ 單詞N"
哪些正在返回
'ABC'|filler|'Y'|'john/1'|'text' 'ABC'|filler|'Y'|'john1'|'te/xt' //i do not want this 'ABC'|filler|'N'|'mary/2'|'text'
我如何添加到命令以在第 4 列中返回帶有正斜杠的結果值?
使用
grep
$ grep -E "^'ABC'[^YN]*(Y|N)'\|'[[:alpha:]]+/" input_file 'ABC'|filler|'Y'|'john/1'|'text' 'ABC'|filler|'N'|'mary/2'|'text'