AWK:将脚本输出从脚本重定向到具有动态名称的另一个文件

Zso*_*kai 3 bash awk redirect gawk

我知道我可以将awk的打印输出重定向到脚本中的另一个文件,如下所示:

awk '{print $0 >> "anotherfile" }' 2procfile
Run Code Online (Sandbox Code Playgroud)

(我知道这是一个虚拟的例子,但它只是一个例子...)

但我需要的是将输出重定向到另一个文件,该文件具有这样的动态名称

awk -v MYVAR"somedinamicdata" '{print $0 >> "MYWAR-SomeStaticText" }' 2procfile
Run Code Online (Sandbox Code Playgroud)

并且应该将重定向重定向到somedinamicdata-SomeStaticText.

我知道我可以通过以下方式完成:

awk '{print $0  }' 2procfile >> "$MYVAR-somedinamicdata"
Run Code Online (Sandbox Code Playgroud)

但问题是它是一个更大的awk脚本,我必须根据某些条件输出到几个文件(这个awk脚本是从另一个bash调用的,它通过-v开关传递一些动态变量......和儿子上.

无论如何可能吗?

提前致谢.

Joh*_*itb 6

我认为

awk -v MYVAR="somedinamicdata" '{print $0 >> (MYVAR "-SomeStaticText") }' 2procfile
Run Code Online (Sandbox Code Playgroud)

应该这样做.awk中的字符串连接只是一个接一个地放在一起.