如何从bash文件传递参数到awk文件

时间:2014-07-26 05:01:12

标签: linux bash shell awk

我有一个bash文件。在那个我想要调用一个awk脚本。它的名字是myAwkFile.awk。问题是:在awk文件中,我必须从当前的bash文件中读取一些参数。或者换句话说,我想将一些参数传递给awk文件。怎么做?

我的bash文件

.
.
a = 10
.
.
#I want to pass a to the myAwkFile.awk. How ?

awk -f myAwkFile.awk myTraceFile.tr
.
.

2 个答案:

答案 0 :(得分:3)

awk -v a="$a" -f myAwkFile.awk myTraceFile.tr

答案 1 :(得分:2)

将参数传递给awk

有三种方法

一:(如果你在BEGIN区块内使用变量,则使用此方法)

awk -v var="$a" 'code' filename

二:

awk 'code' var="$a" filename

三:(这里你使用变量作为awk的主要输入,没有文件输入)

awk 'code' <<< "$a"

始终双引"$variable"