Utilisez la substitution de sed :sed 's/"//g'
s/X/Y/
remplace X par Y.
g
signifie que toutes les occurrences doivent être remplacées, pas seulement la première.
En utilisant juste awk, vous pourriez faire (j'ai aussi raccourci une partie de votre tuyauterie):
strings -a libAddressDoctor5.so | awk '/EngineVersion/ { if(NR==2) { gsub("\"",""); print $2 } }'
Je ne peux pas le vérifier pour vous car je ne connais pas votre saisie exacte, mais ce qui suit fonctionne :
echo "Blah EngineVersion=\"123\"" | awk '/EngineVersion/ { gsub("\"",""); print $2 }'
Voir aussi cette question sur la suppression des guillemets simples.
tr
peut être plus concis pour supprimer des caractères que sed
ou awk
, en particulier lorsque vous souhaitez supprimer plusieurs caractères différents d'une chaîne.
Suppression des guillemets :
echo '"Hi"' | tr -d \"
# Prints Hi without quotes
Suppression de différents types de parenthèses :
echo '[{Hi}]' | tr -d {}[]
# Prints Hi without brackets
-d
signifie "supprimer".