[TUTORIAL] Listando Arquivos em Γrvore com Comando tree
π³ Como instalar o comando tree
em diferentes sistemas
O comando tree
exibe a estrutura de diretΓ³rios de forma hierΓ‘rquica no terminal.
Por padrΓ£o, ele nΓ£o vem instalado em todos os sistemas, mas Γ© fΓ‘cil de adicionar.
π§ Linux
Debian, Ubuntu, Mint:
sudo apt update
sudo apt install tree
RedHat, CentOS, Fedora:
sudo yum install tree
# ou
sudo dnf install tree
π macOS
Se vocΓͺ ainda nΓ£o tem o Homebrew, instale com:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Depois:
brew install tree
πͺ Windows
CMD / PowerShell (nativo):
tree /f
/f
lista arquivos; sem ele, mostra apenas pastas.
Git Bash (versΓ£o estilo Unix):
- Instale o Git for Windows
- Abra o Git Bash
- Rode:
tree -L 2
π WSL (Ubuntu no Windows)
sudo apt update
sudo apt install tree
β Exemplos de uso
- Exemplo simples - Pasta de um projeto pessoal
tree src/shared
- EntΓ£o obtenho
src/shared
βββ businessRules
β βββ constants
β β βββ userFunctions.const.ts
β βββ enums
β βββ companySignature.enum.ts
β βββ companyStatus.enum.ts
β βββ publicRoutes.enum.ts
β βββ userAssaignaments.enum.ts
βββ constants
β βββ messages.const.ts
βββ crypto
β βββ encrypt.ts
β βββ verifyEncryption.ts
βββ database
β βββ prismaClient.ts
βββ date
β βββ generateExpiresAt.ts
βββ enums
β βββ DefaultColorScheme.enum.ts
β βββ frontEndRoutes.enum.ts
βββ errors
β βββ constants
β β βββ clientErrors.const.ts
β β βββ systemErrors.const.ts
β βββ enums
β β βββ errorType.enum.ts
β βββ throwErrorHandler.ts
β βββ utils
β βββ isHandledApolloError.ts
βββ formatters
β βββ nameFormatter.ts
β βββ userNameFormatter.ts
βββ helpers
β βββ redis
β βββ enums
β β βββ redisKeys.enum.ts
β βββ operations
β β βββ getManyRedis.ts
β β βββ saveManyToRedis.ts
β βββ redisClient.ts
βββ logger
β βββ constants
β β βββ systemLogs.const.ts
β βββ systemLogger.ts
β βββ transports
β βββ consoleLogger.ts
βββ security
β βββ authenticateUser.ts
β βββ generateCredentials.ts
βββ services
β βββ emails
β β βββ companyProvisioning
β β β βββ handlerEmailCompanyProvisioning.ts
β β β βββ templateEmailCompanyProvisioning.hbs
β β βββ constants
β β β βββ sendersAgents.const.ts
β β βββ sendEmailTransactional.ts
β β βββ userCompanyEmail
β β βββ handlerEmailUserCompany.ts
β β βββ templateEmailUserCompany.hbs
β βββ providers
β βββ brevo
β βββ brevoClient.ts
βββ token
β βββ generateToken.ts
βββ utils
β βββ generateUniqueUsername.ts
βββ validators
βββ cnpj.validator.ts
- Outros exemplos
tree -L 2
-L 2
β mostra atΓ© 2 nΓveis-a
β inclui arquivos ocultos-I 'node_modules|.git'
β ignora pastas especΓficas
tree -L 2 -a -I 'node_modules|.git' > estrutura.txt
Exporta a Γ‘rvore de diretΓ³rios para um
.txt
π‘ Dica extra (alias)
Adicione ao seu .bashrc
ou .zshrc
:
alias t="tree -L 2 -a -I 'node_modules|.git'"
Assim, vocΓͺ pode usar sΓ³ t
no terminal para listar a estrutura rapidamente.
Pronto! Agora vocΓͺ tem o tree
funcionando como deve em qualquer sistema. π±
Essa ferramenta Γ© muito boa para adicionar a contextos em IA. Muitas vezes acabei descobrindo que bugs eram por conta de arquivos com nomes errados ou em locais incorretos.
Exatamente, eu uso muito ela para contextualizar a IA e ela meio que jΓ‘ entende os arquivos utilitΓ‘rios mesmo sem saber os conteΓΊdos. EntΓ£o ela jΓ‘ entrega o arquivo importando certinho essas funΓ§Γ΅es. E uma coisa bacana que ajudou na produtividade com TS/JS foi exportar todas com export { nomeFuncao } e nΓ£o com expor default nomeFuncao. Ai eu digo para a IA no contexto que nada no meu sistema Γ© exportado como default. Talvez esse insight ajude masi alguΓ©m a aumentar a produtividade.
Interessante demais, obrigado por essa informaΓ§Γ£o...
Tamojunto. Tem uma galera querendo reunir para engrenarmos um sistema de SaaS multi empresas para multi usuΓ‘rios e multiusuΓ‘rios para multiplas empresas. Se quiser da uma olhada na discuΓ§Γ£o do post: https://www.tabnews.com.br/RomarioRodrigues/pitch-multusai-equipe-de-marketing-autonoma-para-saas-e-startups-iniciais
Disponha. Aqui Γ© um pelo outro!