Вы можете использовать параметр -F
, чтобы получить вывод, более подходящий для синтаксического анализа, например.
lsof -F t | awk '/^t/ {print substr($0,2)}'
См. раздел OUTPUT FOR OTHER PROGRAMS
в man lsof
В более общем смысле, если ваши поля не разделены однозначно, вам может потребоваться прибегнуть к поиску позиции символа в строке заголовка, например.
awk -v field="TYPE" 'NR==1 {c = index($0,field)} {print substr($0,c,length(field))}'