合格しようとしています。変えるシェルスクリプトからテーブルのパターン認識サブセットまでの引数の数。これまでに試したことは次のとおりです。
ファイル "infile":
ID,GROUP
1,GROUP2
2,GROUP2
3,GROUP4
4,GROUP4
5,GROUP5
6,GROUP5
7,GROUP23
8,GROUP23
9,GROUP23
ファイルのサブセット.sh:
#!/bin/sh
rm -f outfile_$week
week = $1
shift
for TOKEN in "$@"
do
echo "adding records for" $TOKEN
awk -F "," -v group = $TOKEN '{ if(FNR > 2 && $2 ~/group/){print $0} }' infile >> outfile_$week
done
また、group = "$TOKEN"、"group = $TOKEN"を試してから、両方とも一重引用符で試しました。私は次のように送信します。
sh subset.sh 061314 GROUP2 GROUP23
エラーメッセージはほとんど表示されません。
Usage: awk [-F fs][-v Assignment][-f Progfile|Program][Assignment|File] ...
助けてくれてありがとう。ありがとうございます!
編集:私は走ってみました
awk -F "," -v group ="GROUP1" '{ if(FNR > 2 && $2 ~/group/){print $0} }' infile
役に立たない...(上記と同じエラー)これが起こる理由を知っている人はいますか?
ベストアンサー1
次のように書く必要があります。
-v group="$TOKEN"
代わり-v group = $TOKEN
に構文エラーが発生しますawk
。