Ich wollte nach Schlüsselwörtern mit doppelten Anführungszeichen suchen. Um ein einfaches Beispiel zu geben:
echo "member":"time" | grep -e "member\""
Das passt nicht zusammen. Wie kann ich es reparieren?
Das Problem ist, dass Sie der Eingabezeichenfolge nicht korrekt entkommen. Versuchen Sie Folgendes:
echo "\"member\":\"time\"" | grep -e "member\""
Alternativ können Sie doppelte Anführungszeichen in einfachen Anführungszeichen verwenden:
echo '"member":"time"' | grep -e 'member"'
Es ist eine Frage der Präferenz, die Sie klarer finden, obwohl der zweite Ansatz Sie daran hindert, Ihren Befehl in einen anderen Satz einfacher Anführungszeichen (z ssh 'cmd'
. B. ) zu verschachteln .
echo '"member":"time"' |grep -e "member"
nicht getestetecho '"member":"time"' |grep -e 'member"'
. Beide Ansätze sind gültig, aber ich bevorzuge explizite Flucht, da die Absicht klarer ist.