Wie verwende ich das AWK-Trennzeichen für einfache Anführungszeichen?

Wie verwende ich das AWK-Trennzeichen für einfache Anführungszeichen?

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}'

-FDie Verwendung des Schalters zum Angeben des Feldtrennzeichens führt jedoch zu besser lesbarem Code:

awk -F\' '{print $2}'

verwandte Informationen