Не могли бы вы попробовать следующее.
awk 'BEGIN{FS=OFS"|"} FNR==1{$3="NEW_VAL"} 1' Input_file
Или сделать так, чтобы номер строки и номер столбца передавались в качестве переменной, используйте следующее (где вы можете просто изменить значения переменных, и это должно работать для новых значений)
awk -v line=1 -v column=3 'BEGIN{FS=OFS="|"} FNR==line{$column="NEW_VAL"} 1' Input_file
Если вы хотите сохранить выходные данные в сам файл Input_file, добавьте > temp_file && mv temp_file Input_file
к вышеприведенным кодам.