Verwenden Sie die Substitution von sed:sed 's/"//g'
s/X/Y/
ersetzt X durch Y.
g
bedeutet, dass alle Vorkommen ersetzt werden sollen, nicht nur das erste.
Mit nur awk könnten Sie Folgendes tun (ich habe auch einige Ihrer Rohrleitungen gekürzt):
strings -a libAddressDoctor5.so | awk '/EngineVersion/ { if(NR==2) { gsub("\"",""); print $2 } }'
Ich kann es nicht für Sie überprüfen, weil ich Ihre genaue Eingabe nicht kenne, aber Folgendes funktioniert:
echo "Blah EngineVersion=\"123\"" | awk '/EngineVersion/ { gsub("\"",""); print $2 }'
Siehe auch diese Frage zum Entfernen von einfachen Anführungszeichen.
tr
kann zum Entfernen von Zeichen prägnanter sein als sed
oder awk
, insbesondere wenn Sie mehrere verschiedene Zeichen aus einer Zeichenfolge entfernen möchten.
Doppelte Anführungszeichen entfernen:
echo '"Hi"' | tr -d \"
# Prints Hi without quotes
Verschiedene Arten von Klammern entfernen:
echo '[{Hi}]' | tr -d {}[]
# Prints Hi without brackets
-d
steht für "löschen".