felizmente! existe um comando de linha única
ls -lav
deve fazer o que você está procurando
Aqui está a saída do meu comando normal ls
:
f1 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 f2 f20 f3 f4 f5 f6 f7 f8 f9
Então eu tenho 20 arquivos. Eu preciso deles exibidos como:
f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f16 f17 f18 f19 f20
Existe algum comando de linha única para isso além de escrever um script? Tenho certeza que alguns de vocês devem ter enfrentado essa situação estranha. Nota: o acima é apenas uma amostra. No cenário real, preciso de uma lista de todos os nomes de arquivos na ordem de classificação adequada. (variando de f{0..10000}
)
Com o GNU ls
, você pode usar:
ls -v
Com o POSIX tools chest:
ls | sort -nk1.2 | paste -sd ' ' -
Se você tiver certeza de que todos os arquivos no intervalo existiam, com os shells têm expansão de chave :
echo f{1..20}
com zsh
:
print -r -- f*(n)
Tags ls sort shell-script