Diversos novos usuários
Linux estão muito acostumados com a interface gráfica do Windows e possuem receio em utilizar o terminal do Linux. Com o passar do tempo, percebem a grande versatilidade que podem ter ao utilizar a "tela preta", onde devemos escrever os comandos, ao invés de clicar nos botões de interface com o mouse. Depois de algum tempo, costumam utilizar com tanta frequência esses diversos comandos, buscando sempre conhecer melhor esse tipo de interface.
Neste material trago alguns truques úteis, principalmente para os iniciantes no mundo Linux, para que eles tenham mais facilidade na utilização desse sistema operacional.
Encontrar o comando correto
Executar o comando correto pode ser vital na utilização do sistema, mas existem diversas opções de comandos no Linux. Muitos me perguntam: Como posso encontrar o comando que devo utilizar? A resposta é o comando apropos.
Para encontrar quais comandos posso utilizar para listar um diretório (list directory), devo utilizar:
apropos "list directory"
dir (1) - list directory contents
ls (1) - list directory contents
ntfsls (8) - list directory contents on an NTFS filesystem
vdir (1) - list directory contents
Executar seu último comando
Algumas vezes, você precisa executar o mesmo comando diversas vezes, ou precisa lembrar de um comando utilizado no passado. Para isso podemos utilizar o history ou o !<id>.
history
Observe na imagem acima que o comando history traz um histórico com todos os últimos comandos digitados, sendo que cada comando possui um número indicando sua linha. Caso eu queira executar novamente o comando que está na linha 52 (lslogins), poderia fazer da seguinte forma:
!52
Utilize o comando midnight
Caso você prefira um alternativa aos comandos cd, cp, mv, rm etc, pode utilizar o comando midnight. Ele possui uma interface visual no modo de texto, onde a maioria dos comandos são realizados utilizando as teclas F1, F2 etc.
sudo apt install mc
mc
Utilize a tecla <TAB> para alternar entre o painel direito e o esquerdo.
Caso você queira, por exemplo, copiar um arquivo (install.sh) que está no meu diretório home (~), para a pasta temporária do sistema (/tmp), primeiro navegue até a pasta temporária no painel direito. Depois volte para o painel esquerdo e selecione o arquivo que será copiado.
Agora pressione <F5> para realizar a cópia.
Veja que agora o arquivo install.sh está também no diretório /tmp.
Desligar ou reiniciar o computador em um horário específico
Para desligar e reiniciar o computador utilizamos o comando shutdown. Caso você queira desligar o computador às 21h00, utilize:
sudo shutdown 21:00
Caso queira reiniciar seu computador daqui 15 minutos, utilize:
sudo shutdown -r +15
Encontrar arquivos
A busca por arquivos pode ser mais simples do que a maioria das pessoas imagina, utilizando o comando find.
Buscar os arquivos com mais de 10 MB no diretório atual:
find . -type f -size 10M
Buscar arquivos com um nome:
find . -name livros.txt
Buscar os arquivos em uma pasta e alterar suas permissões para 644:
find /home/user/files/ -type f -exec chmod 644 {} ;
Em um próximo artigo irei demonstrar diversas utilizações do comando find.
Criar uma árvore de diretórios com um único comando
O comando mkdir é utilizando para criarmos diretórios.
Caso você queira, por exemplo, criar a seguinte árvore:
Livros/
Livros/Acao
Livros/Drama
Livros/TI
Se você utilizar o comando mkdir da forma tradicional, executaria ele 4 vezes! Tente usar da seguinte forma, com o argumento -p:
mkdir -p Livros/{Acao,Drama,TI}
ls Livros/
Copiar um arquivo para diversos diretórios
Suponha que eu tenha o arquivo autores.txt que é um modelo, que será utilizado em todos os diretórios de Livros criados no exemplo anterior. Como posso copiá-lo para todos eles, utilizando um único comando? A solução está no exemplo abaixo.
echo /home/diego/Livros/Acao/ /home/diego/Livros/Drama/ /home/diego/Livros/TI/ | xargs -n 1 cp /home/diego/autores.txt
Excluir arquivos muito grandes
Algumas vezes os arquivos podem crescer muito, ficando enormes! Um exemplo clássico são os arquivos de log não rotacionados, com 300GB, 500GB , ou maiores, podendo causar dificuldades para os administradores de sistemas. Em muitos casos, remover esses arquivos com o comando rm pode não funcionar, já que eles são muito grandes e essa ação será muito "pesada" para o sistema. Uma alternativa é limpar o arquivo antes de excluir. No exemplo abaixo, irei limpar o arquivo log_enorme.log.
> /path-to-file/log_enorme.log
O que aconteceu no comando acima é que foi escrito um arquivo vazio sobre o log_enorme.log.
Ler um arquivo de log em tempo real
Em diversos casos precisamos ler e exibir um arquivo de log em tempo real, como por exemplo o arquivo de log do Apache, WebLogic, Tomcat etc. Para isto, utilizamos o "tail -f".
tail -f /var/log/syslog
Utilizar o help nos comandos Linux
Esta dever ser uma das dicas mais importantes, a utilização do parâmetro help nos comandos Linux. Desta forma, você pode exibir as principais opções de cada comando, sem utilizar o manual do sistema. No comando abaixo, utilizo o help com o comando ls.
ls --help
Conclusões
Espero que os truques expostos acima te ajudem na jornada de utilização do terminal Linux.