これらの2行をどのように組み合わせることができ、TunerParamsおよび/またはCalicinternalが見つかったら、「Error: Rule 19: Tunerparams and/or Calicinternal in script at line X,Y...」をエコーします。
{
egrep -E "TunerParams|CalcInternal" $INPUT_FILE -n | cut -d ":" -f 1
echo "error: Rule 19: Tunerparams and/or Calicinternal in Script at line"
}
答え1
awk '/TunerParams|CalcInternal/ {print "error: Rule 19: Tunerparams and/or Calicinternal in Script at line", NR}' $FILENAME
答え2
ocurranの解決策はawk
良い解決策です。あなたはこれに特に興味があるようですので、egrep
いくつかのステップを踏むべきです:
line="$(egrep -E "TunerParams|CalcInternal" "$INPUT_FILE" -n | cut -d ":" -f 1)"
if [[ -z $line ]]; then
printf 'error: Rule 19: Tunerparams and/or Calicinternal in Script at line %s\n' "$line"
fi
コマンドの出力をキャプチャし、egrep
その出力に内容がある場合はエラーメッセージを印刷し、そうでなければ何も印刷しません。