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
- Listar todos os arquivos, inclusive ocultos, com detalhes legíveis e organizados por data de modificação:
ls -alh --color --group-directories-first
- Listar apenas diretórios com detalhes e tamanho legível:
ls -ldh */
Resumo das Principais Flags do ls
Flag | Descrição |
---|---|
-a | Lista todos os arquivos, incluindo ocultos |
-l | Exibe detalhes completos dos arquivos |
-h | Mostra o tamanho dos arquivos em formato legível |
-t | Ordena por data de modificação |
-r | Inverte a ordem de exibição |
-R | Lista recursivamente o conteúdo de diretórios |
--group-directories-first | Exibe diretórios antes dos arquivos |
-i | Mostra o número de inode dos arquivos |
-d | Lista apenas diretórios, sem mostrar o conteúdo |
--color | Exibe a listagem com cores diferenciando tipos de arquivos |
-F | Indica tipo de arquivo (diretório, executável, etc.) |
-S | Ordena por tamanho |
-X | Agrupa arquivos pela extensão |