1. ホーム
  2. linux

[解決済み] grepで二重引用符をエスケープする

2022-11-09 14:16:47

質問

二重引用符で囲まれたキーワードをgrepしたい。簡単な例を挙げると

echo "member":"time" | grep -e "member\""

これが一致しません。どうすれば直せますか?

どのように解決するのですか?

入力された文字列を正しくエスケープしていないことが問題ですので、試してみてください。

echo "\"member\":\"time\"" | grep -e "member\""

また、一重引用符の中にエスケープされていない二重引用符を使用することもできます。

echo '"member":"time"' | grep -e 'member"'

どちらが分かりやすいかは好みの問題ですが、2番目のアプローチでは、コマンドを別の一重引用符の中に入れ込むことができません(例えば ssh 'cmd' ).