一重引用符、パイプ、および末尾/を含むパターンを使用して行をどのように描画しますか?

一重引用符、パイプ、および末尾/を含むパターンを使用して行をどのように描画しますか?

次のファイルがあります

'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'

条件は

  1. ABCという言葉が含まれています。
  2. パターンマッチ「Y」または「N」、パイプの後にスラッシュが続く必要があります。

私は現在立ち往生しています

wordY="'Y'|"

単語 N = "'N'|"

grep ABC test.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'

4番目の列にスラッシュを使用して結果値を返すコマンドをどのように追加しますか?

ベストアンサー1

使用grep

$ grep -E "^'ABC'\|[^|]*\|'(Y|N)'\|'[[:alpha:]]+/" input_file
'ABC'|filler|'Y'|'john/1'|'text'
'ABC'|filler|'N'|'mary/2'|'text'

おすすめ記事