Vantagens em relação ao ls tradicional
- Identificação visual por tipo: extensões de arquivo, permissões e diretórios recebem cores e símbolos distintos.
- Informações enriquecidas: tamanho, data de modificação e atributos são apresentados de forma organizada.
- Flexibilidade de configuração: tema, ícones e comportamento são controlados por arquivos YAML.
- Portabilidade: executa nativamente no Linux, macOS e Windows.
- Desempenho: binário compilado e leve, com inicialização rápida mesmo em árvores grandes.
Instalação
Pelo gerenciador de pacotes do sistema
No macOS com Homebrew:
brew install lsd
No Fedora:
sudo dnf install lsd
No Arch Linux:
sudo pacman -S lsd
Pelo Cargo
Se já possui a toolchain do Rust:
cargo install lsd --locked
Compilando a partir do código-fonte
git clone https://github.com/lsd-rs/lsd.git
cd lsd
cargo build --release
Uso básico
Listar o diretório atual com entradas ocultas:
lsd -a
Exibir detalhes completos em formato de lista:
lsd -l
Inspecionar um caminho específico:
lsd -l /var/log
Arquivos de configuração
O LSD utiliza YAML. Os caminhos padrão são:
- Linux/macOS:
~/.config/lsd/config.yaml - Windows:
%APPDATA%\lsd\config.yaml
Para usar um arquivo em local alternativo:
lsd --config-file ~/.lsd/config.yaml
Exemplo de configuração inicial:
classic: false
color:
theme: custom
icons:
when: always
theme: fancy
blocks:
- permission
- user
- size
- date
- name
date: date
Personalização de cores e ícones
Modos de cor
default: paleta embutida.no-color: desativa todas as cores.custom: utiliza o arquivocolors.yamldefinido pelo usuário.
O arquivo de cores deve ficar no mesmo diretório da configuração principal e permite redefinir tons para arquivos, diretórios, links simbólicos, permissões e muito mais.
Ícones
Para renderizar corretamente os glifos, instale uma Nerd Font e configure-a no emulador de terminal. Sem essa fonte, os ícones aparecerão como quadrados ou caracteres de substituição.
Combinações úteis de opções
Mostrar ícones e cores de forma explícita:
lsd -l --icon always --color auto
Visualizar a estrutura de árvore limitada a dois níveis:
lsd --tree --depth 2
Ordenar por data de modificação, do mais antigo para o mais recente:
lsd -lt --reverse
Exibir tamanhos humanamente legíveis com ícones desabilitados para diretórios muito grandes:
lsd -lh --icon never
Integração com o shell
Substitua o comando nativo por aliases no .bashrc ou .zshrc:
alias l='lsd -l'
alias lt='lsd --tree'
alias la='lsd -la'
No Fish:
alias l 'lsd -l'
alias lt 'lsd --tree'
alias la 'lsd -la'
Resolução de problemas comuns
- Ícones não aparecem: veriifque se uma Nerd Font está instalada e selecionada no perfil do terminal.
- Caracteres estranhos: o LSD espera UTF-8; codificações inválidas são substituídas por ``.
- Cores inesperadas: revise a variável de ambiente
LS_COLORSe o tema definido no YAML. - Lentidão em diretórios enormes: use
--icon neverou--no-symlinkpara reduzir operações extras.
lsd -la /usr/share --icon never