Como posso fazer o ls exibir apenas arquivos?

10

Eu acho que tem que haver uma maneira de fazer com que o ls exiba apenas não-diretórios, mas a página man não torna óbvio

    
por thinksinbinary 11.08.2016 / 23:54

3 respostas

21
ls -p | grep -v /

Usando ls -p informa ls para acrescentar uma barra às entradas que são um diretório e usar grep -v / diz grep para retornar apenas as linhas não contendo uma barra.

    
por thomasrutter 12.08.2016 / 01:53
7

Você pode tentar isto:

find . -maxdepth 1 -not -type d

E mapeie isso para um alias especial.

Mas se você estiver realmente interessado em usar o comando ls , aqui:

ls -p | egrep -v /$

    
por theabhinavdas 12.08.2016 / 01:07
4

Alternativamente:

ls -lAh | grep -v '^d'

Este método lista em

  • -l formato de lista longa
  • -A Exibe quase todos (mostra arquivos ocultos, mas não mostra . e .. )
  • -h Tamanhos de arquivos legíveis por humanos

enquanto grep

  • -v Não mostra registros correspondentes
  • Regular expression filter ^d - Aqueles começam com a letra d (para o diretório), por exemplo, drwxrwxr-x <some file details> <foldername>

Se você não quer digitar todas as vezes, você pode entrar em um alias para o seu perfil bash / shell.

    
por sdkks 12.08.2016 / 04:38

Tags