Respostas:
Se você deseja distinguir pastas de arquivos facilmente, use algo parecido ls -alhF. Eu costumo definir lcomo um alias para isso, ie. Eu coloquei a linha alias l='ls -alhF'no meu .bashrc.
para listar apenas pastas, tente: ls -d */
-dlista os próprios diretórios, não o conteúdo. Para explicar isso, considere o que acontece se digitarmos
ls */.lsdesce uma camada para baixo em cada subdiretório e lista todos os arquivos em cada um deles sequencialmente
Fonte: man ls
*/*/é conhecido como "glob" no UNIX. (veja Wikipedia para mais detalhes). Mas, basicamente, significa "qualquer nome de arquivo que termine em uma barra". No UNIX, diretórios são realmente apenas arquivos, fundamentalmente. Mas eles são nomeados especialmente terminando em uma barra para que o sistema operacional saiba que são diretórios (ou pastas, na fala da pessoa comum). E o asterisco *é tecnicamente um curinga que significa "qualquer sequência de caracteres".
Este parágrafo não se refere especificamente à sua pergunta, mas se você nunca leu sobre isso, será bom vê-lo. Os globos são diferentes das expressões regulares, como (parcialmente) explicado em Qual é a diferença entre expressões regulares e globos? Existem livros inteiros escritos sobre expressões regulares, mas existem várias maneiras diferentes de codificar expressões de correspondência de padrões.
Como sou um usuário muito inexperiente, adoro este site. Ele mostra tudo o que você deseja saber sobre os comandos do bash; em alguns casos, até fornece exemplos. Muito útil.
No seu caso:
ls para listar os arquivosls -a para incluir arquivos ocultosls -l para um formato de listagem longols -al | grep ^d
inclua arquivos ocultos '-a' grep ^ comece com 'd', o que significa diretório quando o nome começa com o diretório ponto está oculto
para listar recursivamente ver este
find ./ -type d | less
./ ..................... means starts find in current folder
-type .................. indicates the type to be searched
d ...................... means directory
| ...................... redirects the command
less ................... enables paging using the keyboard arrows and leave with q
ls -1 -d */
Onde
-1
lista um diretório por linha.
Para visualizar as pastas do diretório inicial, o lscomando é suficiente - isso será simples.
$ ls
Desktop Downloads hadoop Pictures Templates
Documents examples.desktop Music Public Videos
Você pode até especificar vários diretórios ls ~ /usr
$ ls ~ /usr
/home/hadoop1:
Desktop Downloads hadoop Pictures Templates
Documents examples.desktop Music Public Videos
/usr:
bin games include lib local locale sbin share src
Para obter a saída em formato longo, podemos usar a -lopção
$ ls -l
total 48
drwxr-xr-x 2 hadoop1 hadoop1 4096 Jul 1 2017 Desktop
drwxr-xr-x 2 hadoop1 hadoop1 4096 Jul 1 2017 Documents
drwxr-xr-x 2 hadoop1 hadoop1 4096 Jul 1 2017 Downloads
-rw-r--r-- 1 hadoop1 hadoop1 8980 Jul 1 2017 examples.desktop
drwxr-xr-x 10 hadoop1 hadoop1 4096 Jul 1 2017 hadoop
drwxr-xr-x 2 hadoop1 hadoop1 4096 Jul 1 2017 Music
drwxr-xr-x 2 hadoop1 hadoop1 4096 Jul 1 2017 Pictures
drwxr-xr-x 2 hadoop1 hadoop1 4096 Jul 1 2017 Public
drwxr-xr-x 2 hadoop1 hadoop1 4096 Jul 1 2017 Templates
drwxr-xr-x 2 hadoop1 hadoop1 4096 Jul 1 2017 Videos