Você poderia tentar isso.
awk '{print substr($0, index($0,$9))}'
Por exemplo, esta é a saída do comando ls:
-rw-r - r--. 1 raiz do root 73834496 6 de dezembro 10:55 Arquivo com espaços 2
Se você usar um awk simples como este
# awk '{print $9}'
Retorna apenas
# File
Se usado com o comando completo
# awk '{print substr($0, index($0,$9))}'
Eu recebo toda a saída
Arquivo com espaços 2
Aqui
substr (s, a, b): retorna b número de caracteres da string s, começando na posição a. O parâmetro b é opcional.
Por exemplo, se a correspondência for addr: 192.168.1.133 e você usar substr da seguinte forma
# awk '{print substr($2,6)}'
Você obtém o IP, por exemplo, 192.168.1.133. Observe o 6 é o caractere a partir de um em addr
Então, no comando apropriado, o $ 2 é $ 0 (que imprime linha inteira.) e índice ($ 0, $ 9) corresponde a $ 9 e imprime tudo à frente da coluna 9. Você pode alterar isso para índice ($ 0, $ 8) e ver isso a saída muda para
# 10:55 File with spaces 2
'index (IN, FIND)'
Isso pesquisa a string IN para a primeira ocorrência da string
FIND, e retorna a posição em caracteres onde essa ocorrência
começa na string IN.
Espero que ajude. Além disso, se você estiver atribuindo esse valor a uma variável no script, será necessário incluir as variáveis entre aspas duplas. Caso contrário, você receberá erros se estiver fazendo alguma outra operação para o nome do arquivo extraído.