Back to blog

Comando ls

4 min de leitura
915 palavras

Introdução

O comando ls é uma das ferramentas mais utilizadas no terminal de sistemas Unix e Linux para listar arquivos e diretórios. Ele oferece diversas opções (flags) para personalizar a exibição das informações, permitindo ao usuário visualizar detalhes importantes sobre os arquivos, como permissões, tamanhos, datas de modificação, entre outros.

Sintaxe Básica

A forma mais simples de utilizar o comando ls é digitando apenas ls no terminal. Isso listará os arquivos e diretórios presentes no diretório atual, sem exibir muitos detalhes:

ls

Exibindo Arquivos Escondidos: a

Por padrão, arquivos e diretórios que começam com um ponto (.) são ocultos. Para exibir esses arquivos, use a flag -a:

ls -a

Isso listará todos os arquivos, incluindo os ocultos, como .bashrc ou .gitignore.

Listagem Detalhada: l

Para obter uma listagem mais detalhada, que inclui permissões, número de links, proprietário, grupo, tamanho e data de modificação, use a flag -l (long listing format):

ls -l

O resultado é algo assim:

drwxr-xr-x  2 user user  4096 Oct 20 12:00 directory1
-rw-r--r--  1 user user  1024 Oct 20 12:00 file1.txt

Onde:

  • drwxr-xr-x: Indica o tipo e as permissões do arquivo/diretório.
  • 2: Número de links.
  • user user: Proprietário e grupo.
  • 4096/1024: Tamanho do arquivo em bytes.
  • Oct 20 12:00: Data e hora da última modificação.
  • directory1/file1.txt: Nome do diretório/arquivo.

Exibir Tamanho em Formato Legível: h

O comando -l mostra o tamanho dos arquivos em bytes. Para facilitar a leitura, a flag -h (human-readable) exibe o tamanho em kilobytes (K), megabytes (M), gigabytes (G), etc.:

ls -lh

O resultado é semelhante ao anterior, mas com tamanhos legíveis:

drwxr-xr-x  2 user user  4.0K Oct 20 12:00 directory1
-rw-r--r--  1 user user  1.0K Oct 20 12:00 file1.txt

Ordenando por Data de Modificação: t

Para ordenar os arquivos e diretórios pela data de modificação (do mais recente para o mais antigo), use a flag -t:

ls -lt

Ordem Reversa: r

Se você deseja inverter a ordem padrão de exibição, pode usar a flag -r. Ela pode ser combinada com outras flags, como a -t, para inverter a ordenação por data:

ls -ltr

Listando de Forma Recursiva: R

Para listar todos os arquivos e diretórios de forma recursiva, ou seja, incluindo o conteúdo dos subdiretórios, use a flag -R:

ls -R

Isso exibirá o conteúdo do diretório atual e de todos os subdiretórios.

Agrupando Diretórios Primeiro: -group-directories-first

Por padrão, ls mistura arquivos e diretórios na exibição. Para listar primeiro os diretórios, use a opção --group-directories-first:

ls --group-directories-first

Exibindo o Inode de Arquivos: i

Cada arquivo em um sistema de arquivos tem um identificador exclusivo chamado inode. Para exibir o número do inode de cada arquivo, use a flag -i:

ls -i

O resultado mostra o número do inode ao lado do nome do arquivo:

1234567 file1.txt
2345678 directory1

Exibindo Apenas Diretórios: d

O comando ls normalmente mostra o conteúdo dos diretórios. Para listar apenas o próprio diretório e não o conteúdo, use a flag -d:

ls -d */

Isso listará apenas os nomes dos diretórios no diretório atual.

Colorindo a Saída: -color

Por padrão, muitos sistemas já habilitam a exibição de cores para distinguir arquivos, diretórios e links simbólicos. Se necessário, você pode forçar a exibição colorida usando a flag --color:

ls --color

Exibindo o Tipo de Arquivo: F

Para distinguir arquivos normais de diretórios, links simbólicos e executáveis, use a flag -F, que adiciona um caractere após o nome do arquivo:

  • / para diretórios
  • @ para links simbólicos
  • para executáveis
ls -F

O resultado pode ser algo assim:

directory1/
file1.txt
script.sh*
link_to_file@

Classificando por Tamanho: S

Se você deseja listar os arquivos ordenados pelo tamanho, do maior para o menor, use a flag -S:

ls -lS

Isso ordenará os arquivos em ordem decrescente de tamanho.

Listando Arquivos por Extensão: X

Para agrupar arquivos com base na extensão, use a flag -X. Isso agrupa arquivos de tipos semelhantes juntos, como .txt, .jpg, etc.:

ls -lX

Exemplos Combinados

  1. Listar todos os arquivos, inclusive ocultos, com detalhes legíveis e organizados por data de modificação:
ls -alh --color --group-directories-first
  1. Listar apenas diretórios com detalhes e tamanho legível:
ls -ldh */

Resumo das Principais Flags do ls

FlagDescrição
-aLista todos os arquivos, incluindo ocultos
-lExibe detalhes completos dos arquivos
-hMostra o tamanho dos arquivos em formato legível
-tOrdena por data de modificação
-rInverte a ordem de exibição
-RLista recursivamente o conteúdo de diretórios
--group-directories-firstExibe diretórios antes dos arquivos
-iMostra o número de inode dos arquivos
-dLista apenas diretórios, sem mostrar o conteúdo
--colorExibe a listagem com cores diferenciando tipos de arquivos
-FIndica tipo de arquivo (diretório, executável, etc.)
-SOrdena por tamanho
-XAgrupa arquivos pela extensão