AWK: Umleitung Skript-Ausgabe von Skript auf eine andere Datei mit dynamischen Namen
Frage
Ich weiß, ich kann awk die Druckausgabe in eine andere Datei aus einem Skript umleiten, wie folgt aus:
awk '{print $0 >> "anotherfile" }' 2procfile
(ich weiß, dass das Dummy-Beispiel, aber es ist nur ein Beispiel ...)
Aber was ich brauche, ist Ausgang auf eine andere Datei zu umleiten, die einen dynamischen Namen wie diese hat
awk -v MYVAR"somedinamicdata" '{print $0 >> "MYWAR-SomeStaticText" }' 2procfile
Und die outpus sollte somedinamicdata-SomeStaticText
umgeleitet werden.
Ich weiß, ich kann es über:
awk '{print $0 }' 2procfile >> "$MYVAR-somedinamicdata"
Aber das Problem ist, dass es ein größerer awk-Skript ist, und ich habe mehrere Dateien in Abhängigkeit von bestimmten Bedingungen zur Ausgabe (und der awk-Skript wird von einem anderen bash genannt, und es passiert etwas dynamisches Variable über den Schalter -v .. . und Sohn auf.
Ist es möglich, irgendwie?
Vielen Dank im Voraus.
Lösung
Ich denke
awk -v MYVAR="somedinamicdata" '{print $0 >> (MYVAR "-SomeStaticText") }' 2procfile
sollte es tun. String-Verkettung in awk ist nur einer nach dem anderen setzen.