Dica: 10 Comandos para usar no seu dia a dia!
Preparei uma lista de comandos úteis para o dia a dia:
Comandos mais utilizados:
Este comando lista os comandos que você mais utiliza!
history | awk '{a[$2]++}END{for(i in a){print a[i] " " i}}' | sort -rn | head
Árvore de sub-diretórios
este comando lista os sub-diretórios de uma pasta, sem necessidade de instalar nada!
ls -R | grep ":$" | sed -e 's/:$//' -e 's/[^-][^\/]*\//--/g' -e 's/^/ /' -e 's/-/|/'
Cria e entra numa pasta de uma vez só
literalmente o que você leu :)
mkdir seu/diretório/aqui && cd $_
Lista de cores (256)
Exibe cada uma das 256 cores
for code in {0..255}; do echo -e "\e[38;05;${code}m \\\e[38;05;${code}m"; done
Conversor de timestamp para data
Converte um timestamp para a sua data equivalente
date -d @[timestamp aqui]
Ver uma linha específica
Permite visualizar uma linha específica de um arquivo
sed -n [número da linha]p [arquivo]
Pesquisar no histórico
Muito útil para encontrar um comando específico já utilizado
history | grep [texto de busca]
Listar arquivos pesados
Este comando lista os 10 arquivos mais pesados em seu diretório atual
du -ahx . | sort -rh | head -10
Exibir processos
Mostra todos os processos que estão rodando:
ps aux
Encontrar o executável/binário de um programa instalado
Este comando mostra o diretório de onde um programa está instalado
Executável:
which [programa]
Binário:
whereis [programa]
Também é uma boa definir ✨aliases✨ para estes comandos. Não sabe como? Recomendo asistir este vídeo, do Diolinux.
Você também pode comentar alguns comandos que você utiliza!
Fontes:
- eu mesmo :)
- amigos
- este belo app
A diferença entre which
e whereis
não é exatamente "executável" vs "binário".
which
mostra o caminho completo de um comando, mas a busca se restringe aos diretórios que estão na variável de ambiente PATH
(que pode inclusive ter diretórios que whereis
não procura).
Já whereis
procura também por outros arquivos relacionados, como fontes e man pages ("manuais"), independente do que está no PATH
.
Exemplo:
$ which ls
/bin/ls
$ whereis ls
ls: /bin/ls /usr/share/man/man1p/ls.1p.bz2 /usr/share/man/man1/ls.1.bz2
Pra pesquisar um comando no histórico, eu costumo usar Ctrl+R mesmo.
É diferente do history | grep
porque é mais "on the fly": por exemplo, se eu digito Ctrl+R e depois "a", ele procura o comando mais recente que tenha "a", mas se em seguida eu digito "w", aí procura pelo comando mais recente que tenha "aw".
Aí eu posso digitar Ctrl+R de novo, que ele procura pelo próximo comando mais recente que tenha "aw" (e posso ir filtrando mais, seja digitando mais coisas para o comando ficar mais específico, ou usando Ctrl+R de novo para ir voltando no histórico).
E no final, é só dar ENTER pra rodar o comando :-)
Mas claro, se eu só quero saber qual era o comando, mas não necessariamente preciso rodá-lo agora, history | grep
é mais adequado.
Sobre mkdir seu/diretório/aqui
, vale lembrar que se a pasta "seu" ou a pasta "diretório" não existir, dá erro.
Nesse caso, basta fazer mkdir -p seu/diretório/aqui
que ele já cria os diretórios faltantes.
Sobre o cd $_
, vale explicar que $_
é o último argumento do comando anterior. Vale pra qualquer comando. Ex:
echo "FOO" "BAR"
FOO BAR
echo $_
BAR
No caso de mkdir seu/diretório/aqui && cd $_
, funciona porque $_
será o diretório que acabou de ser criado (é o último argumento do comando anterior, no caso, mkdir
.
).