Ubuntu ls
O ls mostra o que existe dentro de uma pasta. Ele é os "olhos" do terminal: antes de copiar, mover ou apagar, você usa o ls para ver onde está mexendo. Provavelmente é o comando que você mais vai digitar.
- Listar a pasta atual, outra pasta ou vários lugares de uma vez.
- Ler cada coluna do
ls -l: tipo, permissões, dono, tamanho e data. - Ver arquivos ocultos e ordenar por data ou por tamanho.
- Outras formas de ver o conteúdo de uma pasta (
ll,tree, app Arquivos). - O que fazer quando o
lsresponde com erro.
A ideia: uma pasta é uma lista de nomes
Para o Linux, uma pasta (ou diretório) é uma lista de nomes. Cada nome aponta para um arquivo ou para outra pasta. O ls lê essa lista e mostra na tela. O nome vem de list, "listar".
Sem nenhum argumento, ele lista a pasta onde você está agora (a "pasta atual", que aparece no prompt depois dos dois-pontos):
- ls
- O programa. Sem argumentos, lista a pasta atual.
$ ls Documentos Imagens Música Vídeos 'Área de trabalho' Downloads Modelos Público frutas.txt
O que observar nessa resposta:
- Colunas de cima para baixo: o
lsorganiza os nomes em colunas para caber na janela. Leia descendo: Documentos, Downloads, Imagens, Modelos… - Maiúsculas primeiro: no Ubuntu 26.04 a ordem segue o código de cada letra. Maiúsculas vêm antes das minúsculas, e letras com acento (como o "Á") vão para o fim.
- Aspas:
'Área de trabalho'tem espaços, então olsmostra entre aspas. Para os nomes ficarem alinhados, os outros ganham um espaço na frente. - Cores (no seu terminal): pastas em azul, programas executáveis em verde, arquivos compactados em vermelho, imagens em roxo.
O que o comando devolve
Quando a pasta está vazia, o ls não mostra nada. Isso não é erro: o código de saída continua 0.
$ ls $ echo $? 0 « pasta vazia, mas o comando deu certo $ ls nada ls: não é possível acessar 'nada': Arquivo ou diretório inexistente $ echo $? 2 « 2 = o ls não achou o que você pediu
Listar outra pasta
Passe o caminho da pasta como argumento. Você não precisa entrar nela com cd.
- ls
- O programa.
- Documentos
- O argumento: qual pasta listar. Pode ser um caminho relativo ou absoluto (veja Caminhos).
$ ls Documentos acesso.log notas.txt projetos relatorio.odt $ ls /etc/apt sources.list.d
Com mais de um argumento, o ls lista cada um com um título:
$ ls Documentos Imagens Documentos: acesso.log notas.txt projetos relatorio.odt Imagens: ferias.jpg perfil.png
Missão: sem sair da pasta pessoal, descubra o que há dentro de Imagens e de Documentos/projetos.
Ver detalhes: -l
A opção -l (de long, "formato longo") mostra uma linha por item, com informações sobre cada um.
- ls
- O programa.
- -l
- Opção: formato longo, uma linha por item.
- Documentos
- A pasta a listar.
$ ls -l Documentos total 20 -rw-rw-r-- 1 ana ana 389 Oct 15 09:07 acesso.log -rw-rw-r-- 1 ana ana 71 Oct 14 17:40 notas.txt drwxrwxr-x 3 ana ana 4096 Oct 12 08:03 projetos « começa com d: é uma pasta -rw-rw-r-- 1 ana ana 8394 Oct 14 17:40 relatorio.odt
Lendo uma linha, pedaço por pedaço
Pegue a linha do notas.txt:
- -
- Tipo:
-arquivo comum,dpasta (directory),llink. - rw-rw-r--
- Permissões: o que o dono, o grupo e os outros podem fazer. Explicado em Entendendo Permissões.
- 1
- Links: quantos nomes apontam para este arquivo. Para pastas, conta as subpastas.
- ana
- Dono: o usuário dono do arquivo.
- ana
- Grupo: o grupo dono do arquivo. No Ubuntu, cada usuário tem um grupo com o mesmo nome.
- 71
- Tamanho em bytes. Pastas mostram 4096: é o espaço da lista de nomes, não do conteúdo.
- Oct 14 17:40
- Última modificação. No Ubuntu 26.04, o mês aparece em inglês. Arquivos com mais de 6 meses mostram o ano no lugar da hora.
- notas.txt
- Nome.
E a primeira linha, total 20? É o espaço ocupado no disco pelos itens listados, em blocos de 1 KB. Você raramente vai precisar dela.
O 4096 da pasta projetos não diz quanto os arquivos dentro dela ocupam. Para isso use du -sh projetos (veja lsblk, df, du).
Tamanhos legíveis: -h
Ler 6333579264 bytes é difícil. A opção -h (de human-readable, "legível por humanos") converte para K, M e G. Ela só faz sentido junto com -l.
$ ls -l Downloads total 6295060 -rw-rw-r-- 1 ana ana 49152 Oct 15 08:47 foto.jpg -rw-rw-r-- 1 ana ana 104857600 Oct 1 19:30 fotos-viagem.zip -rw-rw-r-- 1 ana ana 2411520 Oct 13 11:02 manual.pdf -rw-rw-r-- 1 ana ana 5242880 Oct 9 20:10 musica.mp3 -rw-rw-r-- 1 ana ana 6333579264 Oct 10 21:14 ubuntu-26.04-desktop-amd64.iso $ ls -lh Downloads total 6,1G -rw-rw-r-- 1 ana ana 48K Oct 15 08:47 foto.jpg -rw-rw-r-- 1 ana ana 100M Oct 1 19:30 fotos-viagem.zip -rw-rw-r-- 1 ana ana 2,3M Oct 13 11:02 manual.pdf -rw-rw-r-- 1 ana ana 5,0M Oct 9 20:10 musica.mp3 -rw-rw-r-- 1 ana ana 5,9G Oct 10 21:14 ubuntu-26.04-desktop-amd64.iso « 5,9 gigabytes
Juntando opções
Opções curtas podem ser escritas juntas, e a ordem das letras não importa. Os quatro comandos abaixo fazem exatamente a mesma coisa:
$ ls -l -h Downloads $ ls -lh Downloads $ ls -hl Downloads $ ls Downloads -lh
Arquivos ocultos: -a e -A
No Linux, todo nome que começa com ponto é oculto. Não é segurança, é só organização: configurações como .bashrc ficam escondidas para não poluir a pasta. A opção -a (de all, "todos") mostra tudo.
$ ls -a . .bashrc Downloads Música frutas.txt .. .profile Imagens Público 'Área de trabalho' .bash_history Documentos Modelos Vídeos
Dois nomes estranhos apareceram:
.é a própria pasta onde você está...é a pasta "de cima" (a pasta-mãe).
Eles existem em toda pasta. Se você quer ver os ocultos sem esses dois, use -A (maiúsculo, de almost all, "quase todos"):
$ ls -A .bash_history .profile Downloads Modelos Público frutas.txt .bashrc Documentos Imagens Música Vídeos 'Área de trabalho'
Missão: descubra quais arquivos ocultos existem na pasta pessoal da Ana. Quantos são, sem contar . e ..?
Ordenar a lista
Por padrão, a ordem é pelo nome. Estas opções mudam a ordem:
| Opção | Ordena por | Vem de |
|---|---|---|
-t | Data de modificação, mais recente primeiro | time |
-S | Tamanho, maior primeiro | size |
-X | Extensão (o que vem depois do ponto) | extension |
-r | Inverte qualquer uma das ordens | reverse |
Os arquivos mais recentes
Útil para achar o que você acabou de baixar:
$ ls -lt Downloads total 6295060 -rw-rw-r-- 1 ana ana 49152 Oct 15 08:47 foto.jpg « o mais novo -rw-rw-r-- 1 ana ana 2411520 Oct 13 11:02 manual.pdf -rw-rw-r-- 1 ana ana 6333579264 Oct 10 21:14 ubuntu-26.04-desktop-amd64.iso -rw-rw-r-- 1 ana ana 5242880 Oct 9 20:10 musica.mp3 -rw-rw-r-- 1 ana ana 104857600 Oct 1 19:30 fotos-viagem.zip « o mais antigo
Em pastas de log, o mais comum é o contrário: ls -ltr deixa o mais recente no fim, perto do prompt, onde você está olhando.
Os maiores arquivos
$ ls -lhS Downloads total 6,1G -rw-rw-r-- 1 ana ana 5,9G Oct 10 21:14 ubuntu-26.04-desktop-amd64.iso « o maior -rw-rw-r-- 1 ana ana 100M Oct 1 19:30 fotos-viagem.zip -rw-rw-r-- 1 ana ana 5,0M Oct 9 20:10 musica.mp3 -rw-rw-r-- 1 ana ana 2,3M Oct 13 11:02 manual.pdf -rw-rw-r-- 1 ana ana 48K Oct 15 08:47 foto.jpg
Missão: você está em Downloads. Liste os arquivos do menor para o maior, com tamanhos legíveis. Dica: junte -l, -h, -S e -r.
Só alguns arquivos: curingas
Você pode passar um padrão com * ("qualquer coisa") para listar só o que combina. Quem entende o * é o shell, explicado em Curingas.
$ ls Downloads/*.jpg Downloads/foto.jpg $ ls -lh Downloads/*.zip -rw-rw-r-- 1 ana ana 100M Oct 1 19:30 Downloads/fotos-viagem.zip
Subpastas: -R, e a própria pasta: -d
-R (de recursive, "recursivo") entra em cada subpasta e lista o conteúdo dela também:
$ ls -R Documentos Documentos: acesso.log notas.txt projetos relatorio.odt Documentos/projetos: backup.sh site Documentos/projetos/site: index.html style.css
Já o -d (de directory) faz o contrário: mostra a pasta em si, sem abrir. Use com -l para ver as permissões de uma pasta:
$ ls -ld /tmp drwxrwxrwt 2 root root 4096 Oct 15 10:30 /tmp « o "t" no fim é o sticky bit
Marcar o tipo: -F
Quando não há cores (por exemplo, ao copiar a saída para um e-mail), -F (de classify, "classificar") coloca um símbolo no fim de cada nome:
$ ls -F Documentos/projetos backup.sh* site/
| Símbolo | Significa |
|---|---|
/ | Pasta |
* | Executável (programa ou script) |
@ | Link simbólico (veja Links) |
Formas diferentes de ver o que há numa pasta
1. ll: o atalho que o Ubuntu já traz
O arquivo ~/.bashrc do Ubuntu define ll como ls -alF: tudo, em formato longo, com o tipo marcado.
$ ll total 52 drwxr-x--- 10 ana ana 4096 Oct 15 08:47 ./ drwxr-xr-x 3 root root 4096 Mar 26 2026 ../ -rw------- 1 ana ana 0 Oct 15 08:40 .bash_history -rw-r--r-- 1 ana ana 148 Mar 26 2026 .bashrc -rw-r--r-- 1 ana ana 13 Mar 26 2026 .profile drwxr-xr-x 3 ana ana 4096 Oct 12 08:03 Documentos/ drwxr-xr-x 2 ana ana 4096 Oct 12 08:03 Downloads/ drwxr-xr-x 2 ana ana 4096 Oct 12 08:03 Imagens/ drwxr-xr-x 2 ana ana 4096 Oct 12 08:03 Modelos/ drwxr-xr-x 2 ana ana 4096 Oct 12 08:03 Música/ drwxr-xr-x 2 ana ana 4096 Oct 12 08:03 Público/ drwxr-xr-x 2 ana ana 4096 Oct 12 08:03 Vídeos/ -rw-rw-r-- 1 ana ana 47 Oct 14 16:05 frutas.txt drwxr-xr-x 2 ana ana 4096 Oct 12 08:03 'Área de trabalho'/
Também existem la (ls -A) e l (ls -CF). Confira com type ll.
2. tree: a árvore inteira
O tree desenha a pasta e todas as subpastas. Ele não vem instalado: rode sudo apt install tree.
$ tree Documentos Documentos ├── acesso.log ├── notas.txt ├── projetos │ ├── backup.sh │ └── site │ ├── index.html │ └── style.css └── relatorio.odt 2 directories, 6 files
Em pastas grandes, limite a profundidade com tree -L 1 (só um nível) ou mostre só pastas com tree -d.
3. O app Arquivos
No desktop, Ctrl+H mostra os arquivos ocultos, e a visualização em lista (Ctrl+2) mostra tamanho e data, como um ls -l.
Qual usar?
| Comando | Melhor para… |
|---|---|
ls | Olhada rápida nos nomes. |
ls -lh | Ver tamanhos e datas. |
ll | Ver tudo, inclusive ocultos, com detalhes. |
ls -lt / ls -ltr | Achar o arquivo mais novo. |
ls -lhS | Achar os arquivos que mais ocupam espaço. |
tree | Entender a estrutura de um projeto. |
Missão: compare ls -R Documentos com tree Documentos. Depois experimente ll e type ll.
Quando não funciona
$ ls documentos ls: não é possível acessar 'documentos': Arquivo ou diretório inexistente
O que aconteceu: o Linux diferencia maiúsculas de minúsculas. documentos e Documentos são nomes diferentes.
Como resolver: digite o começo do nome e aperte Tab. O terminal completa o nome certo, com as maiúsculas certas.
$ ls Área de trabalho ls: não é possível acessar 'Área': Arquivo ou diretório inexistente ls: não é possível acessar 'de': Arquivo ou diretório inexistente ls: não é possível acessar 'trabalho': Arquivo ou diretório inexistente
O que aconteceu: o espaço separa argumentos. O ls recebeu três nomes: "Área", "de" e "trabalho".
Como resolver: use aspas, ls "Área de trabalho", ou barra invertida antes de cada espaço, ls Área\ de\ trabalho. O Tab faz isso por você.
$ ls /root ls: não é possível abrir o diretório '/root': Permissão negada
O que aconteceu: /root é a pasta pessoal do administrador. Seu usuário não pode ler o que tem dentro.
Como resolver: se você realmente precisa, use sudo ls /root (veja sudo). Na maioria das vezes, a pergunta certa é "por que preciso olhar aí?".
O que aconteceu: o nome começa com ponto, então ele é oculto.
Como resolver: use ls -a. Se a pasta tiver muitos arquivos, filtre: ls -a | grep bash.
Referência de opções
| Opção | Descrição | Exemplo |
|---|---|---|
-l | Formato longo: tipo, permissões, dono, tamanho, data | ls -l |
-a | Todos, inclusive ocultos, . e .. | ls -a |
-A | Ocultos, sem . e .. | ls -A |
-h | Tamanhos em K, M, G (com -l) | ls -lh |
-t | Ordena por data, mais recente primeiro | ls -lt |
-S | Ordena por tamanho, maior primeiro | ls -lS |
-X | Ordena por extensão | ls -X |
-r | Inverte a ordem | ls -ltr |
-R | Entra nas subpastas | ls -R |
-d | Mostra a pasta, não o conteúdo | ls -ld /etc |
-1 | Um nome por linha | ls -1 |
-F | Marca o tipo: / * @ | ls -F |
-i | Mostra o número do inode | ls -li |
--group-directories-first | Pastas antes dos arquivos | ls -l --group-directories-first |
Exercícios
1. Tudo, com detalhes
Complete para listar todos os arquivos da pasta pessoal, inclusive os ocultos, em formato longo:
2. O maior arquivo
Complete para ordenar Downloads por tamanho, com tamanhos legíveis:
3. Permissões da pasta
Complete para ver as permissões da própria pasta /var/log, e não o conteúdo dela:
4. Na linha drwxr-xr-x 3 ana ana 4096 Oct 12 08:03 projetos, o que indica que projetos é uma pasta?
5. Você rodou ls numa pasta e nada apareceu. O que isso significa?
Resumo
lslista a pasta atual;ls pastalista outra pasta sem entrar nela.-lmostra detalhes;-hdeixa os tamanhos legíveis;-amostra os ocultos.-tordena por data,-Spor tamanho e-rinverte.- Na linha do
-l, o primeiro caractere diz o tipo:dpasta,-arquivo,llink. lletreesão formas práticas de ver tudo de uma vez.