Menon, você já tem uma sed resposta como fazer a operação em todo o arquivo. Se a sua intenção é trabalhar em linhas individuais, como mostrado no seu quadro de código, então você não precisa de sed (ou qualquer outro programa externo), já que seu shell pode provavelmente (veja a nota abaixo) fazer a substituição. Supondo que a variável string em seu código contenha (por exemplo) o valor PORT_NUM , a substituição na variável line poderia ser feita por:
while read line
do
if [[ $line =~ $string ]]; then
line=${line/BILL_NO/NA}
fi
done < "$file"
(Nota: Esta substituição funciona com shells contemporâneas, como bash, ksh, zsh.)