カンマで区切られた文字列がありますが、その行で入力内容を検索したいと思います。
echo US | grep "US,CA,CH,JP"
出力が空です!この文字列で入力を見つけるには、grepをどのように使用する必要がありますか?
答え1
コマンドのパラメータを置き換えます。
echo "US,CA,CH,JP" | grep US
存在する:
echo US | grep "US,CA,CH,JP"
US,CA,CH,JP
US
入力文字列で予想されるものと一致しない文字列(パターン)を探しています。
答え2
カンマが「または」ステートメントとして機能すると予想されない限り、この場合はカンマをパイプに変更して-E
オプションを使用できます。拡大する一般的な表現:
echo US | grep -E "US|CA|CH|JP"
または、カンマを改行文字に変更してください。
echo US | grep "US
CA
CH
JP"
答え3
私は使用します$echo US | grep -i "US|CA|JP|CH"
エコがリストなどを提供するのではなく、実際にパターンを探して「アメリカ」では見つからないかもしれません。