Até asteri esclarecer a questão, pensei que John1024 tinha a resposta. Agora parece que o seguinte funcionará sem a opção --color
:
ls -d $(ls | head -30)
Infelizmente, isso é muito simplista e falhará se houver espaços em branco nos nomes dos arquivos. Para ter em conta que você precisa do mais elaborado:
ls -b | head -30 | xargs ls -d
Em ambos os casos, o princípio é o mesmo: ls | head
obtém os primeiros 30 arquivos, um por linha, que são apresentados como uma lista de argumentos para outro comando ls
, que precisa da opção -d
no caso de qualquer dos arquivos são diretórios.