이 두 줄을 어떻게 결합할 수 있으며 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
다음 해당 출력에 내용이 있는 경우 오류 메시지를 인쇄하고 그렇지 않으면 아무것도 인쇄되지 않습니다.