私はこの質問が何度も提起され、多くの答えがよく書かれていることを知っていますが、小さな仕事で何かを見逃しています。テキストファイルの一部をインポートするには、awkにシェル変数(この場合はパラメータ)を渡してみてください。
cat ~/work/junk.txt
[Section1]
innerline1
innerline2
innerline3
[Section2]
innerline4
innerline5
innerline6
awkで一致するパターンで渡された提供された引数($ 1)を使用するスクリプトを作成しようとしています。
#!/bin/bash
echo pattern is $1
# record separator (RS) is the next blank line
awk -v var="$1" {print '/var/'} RS= ~/work/junk.txt
$ 1が「Section1」として指定されたパラメーターの場合、以下の出力が予想されます。
[Section1]
innerline1
innerline2
innerline3
近いと思うがまだまだ遠い。
どんなアイデアもありがとうございます。
ベストアンサー1
#!/bin/bash
echo "Pattern is ${1}"
awk -F'=' -v section="[$1]" -v f=0 '$0==section {f=1} $0=="" {f=0} f==1 {print}' input