Ihre Frage lautet: wirklich arm ...
Wie auch immer, ich denke, du willst das:
%Vor% Beachten Sie das Escapen von und die doppelten Anführungszeichen.
oder das:
%Vor% Beachten Sie die sinnvolle Verwendung von doppelten und einfachen Anführungszeichen und kein Escaping für .
Sie müssen die Shell-Erweiterung verwenden, da andernfalls das Exportieren einer Shell-Variablen und deren Verwendung aus der Umgebung mit awk - was in dieser Situation overkill ist - umfasst:
%Vor%Ich denke, awk unterstützt keine Variablen in /.../ guards. Bitte korrigieren Sie mich, wenn ich falsch liege.
Anstatt Spiele in der Shell zu zitieren, verwenden Sie die Option -v
, um die Shell-Variable als awk-Variable zu übergeben:
Wenn $REF
nur Text und kein regulärer Ausdruck ist, verwenden Sie die Funktion index()
anstelle von match()
.
In gawk
haben Sie das Array ENVIRON
, z. awk 'END{print ENVIRON["REF"]}' /dev/null
wird Ihre Variable ausgeben, wenn Sie export
aus der Shell in Unterprozesse ausgegeben haben.