awk -F '|' '$5=="1047" || $5=="8401-"{ print $0 }" inputfile.txt
Сверху вы найдете "1047" или "8401" в пятом столбце входного файла "inputfile.txt"
grep -E "\|1047\||\|8401-\|" inputfile.txt
Сверху будет делать то же самое с grep (но это не будет ограничено столбцом 5.
РЕДАКТИРОВАТЬ: Я, должно быть, пропустил 'начиная с FHEAD
' ....
awk -F\| '/^FHEAD/{ print $5 }' inputfile.txt
или с grep
grep -e '^FHEAD|\(.[^|]*|\)\{3\}\(.[^|]*\)' -o inputfile.txt | grep '.[^|]*|*' -o | grep -v '|$'
комбинация grep
и cut
:
grep -e '^FHEAD' inputfile.txt | cut -d'|' -f 5