awkスコープモードでawkパラメータを統合する方法

awkスコープモードでawkパラメータを統合する方法

こんなことを得なければなりません。

#Batch Job - AB1234
texts
texts
texts
texts
texts
#--------

使った

awk '/#Batch Job.*AB1234/,/#--.*/' filename

私は良い進展を示しています。

ただし、このスクリプトを使用してAB1234をパラメータ化しようとすると失敗します。

BATCHJOBNAME=AB1234
awk -v batchjobname=$BATCHJOBNAME '
  /#Batch.*/ { f=1 ; m=0 ; res="" }
  f { res = res $0 ORS }
  f && /Job.*/ && index($2,batchjobname) > 0 { m=1 ;}
  /<#--.*>/ { f=0 ; if (m) print res ; }
 ' filename

ベストアンサー1

この試み:

BATCH=AB1234
awk -v batch="#Batch Job.*${BATCH}" '($0 ~ batch),/#--.*/' filename

おすすめ記事