Eu tenho um diretório de arquivos. Há uma linha em cada arquivo que diz:
# order: N
onde N é um número inteiro. Desejo listar todos os arquivos no diretório (ou até mesmo incluí-los no script wrapper) de acordo com esse número N. Isso é possível a partir de uma linha de comando bash?
Com GNU
grep
, e assumindo que os nomes dos arquivos não contêm dois pontos ou caracteres de nova linha:Com um único processo GNU
awk
:Com
zsh
, você pode definir uma ordem de classificação glob com base no conteúdo dessas linhas com:e, em seguida, use-o, por exemplo, com:
ou
(adicionando também um
.
ao qualificador glob para considerar apenas arquivos regulares (não diretórios, fifos, links simbólicos...)).