Por padrão, o awk considera qualquer seqüência de espaço em branco como um separador de coluna. Não é possível adivinhar que você deseja que a sétima coluna se estenda até o final da linha, incluindo espaço em branco incorporado, você precisa informá-la.
Como você tem quantidades variáveis de espaço em branco entre as colunas, mantenha a definição das colunas baseada em espaço em branco. Mas, em vez de usar $7
para a última coluna, use o texto da linha, menos as seis primeiras colunas.
awk '{
last_column = $0;
sub(/^[[:blank:]]*([^[:blank:]]+[[:blank:]]+){6}/, "", last_column);
print last_column;
}'
Se você tiver uma versão antiga do awk que não suporta classes de caracteres, use [ \t]
em vez de [[:blank:]]
. Se você tem uma versão antiga do awk que não suporta chaves em expressões regulares, faça 6 cópias desse regexp.