
Ich möchte awk verwenden, um Informationen aus der SQL-Ausgabe wie den folgenden zu extrahieren:
(Anzahl (unterschiedliche Serverklassen) = "2")
Und Sie müssen die Zahl extrahieren, die in diesem Beispiel 2 ist.
Ich würde gerne etwa das Folgende tun, weiß aber nicht, wie ich das einfache Anführungszeichen umgehen kann:
<sqlCommand> | awk 'BEGIN{FS="'"}{print $2}'
Wie kann ich in awk ein wörtliches einfaches Anführungszeichen als Feldtrennzeichen erhalten?
Antwort1
Um ein einfaches Anführungszeichen in eine Zeichenfolge in einfachen Anführungszeichen einzufügen, beenden Sie die aktuelle Zeichenfolge, schreiben Sie "'"
„oder“ \'
und beginnen Sie die Zeichenfolge erneut.
In Ihrem Beispiel ist das
awk 'BEGIN{FS="'"'"'"}{print $2}'
oder
awk 'BEGIN{FS="'\''"}{print $2}'
-F
Die Verwendung des Schalters zum Angeben des Feldtrennzeichens führt jedoch zu besser lesbarem Code:
awk -F\' '{print $2}'