0

シェルからAWKスクリプトファイルに特定の値を渡す必要がありますが、それができないかわかりません。

    #! /bin/bash

if [ "$2" = "-C" ] && [ "$3" != "" ]; then

        awk -f SpecCity.awk $1

elif [ "$2" = "-C" ] && [ "$3" = "" ]; then

        awk -f CityOnly.awk $1

fi

値$3をAWKに渡す必要があります。これにより、ポイントするファイルと比較されますが、実行できません。

それを行う方法はありますか?

ありがとうございました

4

1 に答える 1

3

「awk -v」を使用できるはずです。たとえば、「awk -v city=$3...」

新しいバージョンの awk は、"ENVIRON[]" 配列もサポートする必要があります。

ここでは、両方のオプションについて説明します。

http://unix-school.blogspot.com/2011/09/awk-passing-arguments-or-shell.html

于 2012-04-22T17:41:25.403 に答える