AWK: redirection de la sortie de script d'un script vers un autre fichier avec un nom dynamique

StackOverflow https://stackoverflow.com/questions/302152

  •  08-07-2019
  •  | 
  •  

Question

Je sais que je peux rediriger la sortie d'impression de awk vers un autre fichier à partir d'un script, comme ceci:

awk '{print 
awk -v MYVAR"somedinamicdata" '{print 
awk '{print <*>  }' 2procfile >> "$MYVAR-somedinamicdata"
>> "MYWAR-SomeStaticText" }' 2procfile
>> "anotherfile" }' 2procfile

(Je sais que c'est un exemple factice, mais ce n'est qu'un exemple ...)

Mais ce dont j'ai besoin, c'est de rediriger la sortie vers un autre fichier, qui porte un nom dynamique comme celui-ci

<*>

Et les résultats doivent être redirigés vers somedinamicdata-SomeStaticText .

Je sais que je peux le faire via:

<*>

Mais le problème est qu’il s’agit d’un script awk plus volumineux et que je dois exporter plusieurs fichiers en fonction de certaines conditions (et ce script awk est appelé depuis un autre bash et transmet une variable dynamique via le commutateur -v .. et fils dessus.

Est-ce possible de toute façon?

Merci d'avance.

Était-ce utile?

La solution

je pense

awk -v MYVAR="somedinamicdata" '{print <*> >> (MYVAR "-SomeStaticText") }' 2procfile

devrait le faire. La concaténation de chaînes dans awk est simplement mise les unes après les autres.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top