Comandos do Terminal Linux

🌐 Monitoramento de Rede

Monitorar a rede é essencial para diagnosticar problemas de conectividade e desempenho. Aqui estão alguns comandos úteis:

# Monitora a rota e a qualidade da conexão com o servidor associado ao domínio "gmail.com".
mtr -z -i 1 gmail.com

# Envia um pacote ICMP "echo request" para o domínio "gmail.com" a cada 120 segundos, repetindo 10 vezes.
ping -i 120 -c 10 gmail.com

# Exibe a tabela de roteamento do IP.
ip route show

# Lista todas as conexões de rede.
lsof -i  

# Verifica quais dispositivos estão conectados à rede.
nmap -sP 192.168.100.0/24

# Exibe informações sobre as conexões de rede ativas.
ss -tulp
    

💿 Configuração de DVD e Bluetooth

Configurar corretamente o DVD e o Bluetooth pode melhorar a experiência do usuário. Aqui estão alguns comandos úteis:

# Reconfigura o pacote libdvd-pkg.
sudo dpkg-reconfigure libdvd-pkg

# Verifica se o pacote libdvd-pkg está corretamente instalado.
dpkg -s libdvd-pkg

# Carrega o módulo do kernel para suporte a Bluetooth USB.
sudo modprobe btusb

# Lista os módulos do kernel carregados, útil para verificar se o módulo btusb foi carregado.
lsmod | grep 
    

📁 Manipulação de Arquivos e Diretórios

A manipulação de arquivos e diretórios é uma tarefa comum no terminal. Aqui estão alguns comandos úteis:

# Conta o número de arquivos em um diretório.
ls -l | wc -l 

# Conta apenas os arquivos, excluindo "." e "..".
ls -A | wc -l

# Lista todos os arquivos e diretórios, incluindo os ocultos, e permite a rolagem da lista.
ls -a | less

# Lista todos os arquivos criados hoje.
find -maxdepth 1 -daystart -ctime 0 -type f

# Exibe a linha que contém "remover" e a linha seguinte no arquivo "dicas.txt".
cat dicas.txt | grep -A 1 remover

# Exibe apenas os caracteres nas posições 2 e 5 de cada linha do arquivo "text.tx".
cut -c 2,5 text.tx  

# Exibe os caracteres nas posições de 2 a 7 de cada linha.
cut -c 2-7

# Exibe os campos de 2 a 7 de cada linha, onde os campos são separados por ".".
cut -d "." -f 2-7

# Exibe as primeiras 10 linhas do arquivo "file.txt".
head -n 10 file.txt

# Exibe os primeiros 10 caracteres do arquivo "file.txt".
head -c 10 file.txt

# Exibe as linhas de 12 a 22 do arquivo.
head -n 22 | tail -n 11

# Conta o número de linhas no arquivo "nome.txt".
wc -l nome.txt

# Conta o número de bytes no arquivo "nome.txt".
wc -c nome.txt

# Conta o número de caracteres no arquivo "nome.txt", incluindo espaços em branco.
wc -m nome.txt

# Conta o número de palavras no arquivo "nome.txt".
wc -w nome.txt

# Exibe o conteúdo do arquivo "nome.txt" com números de linha.
nl nome.txt

# Limpa o histórico de comandos do terminal.
history -c
    

💻 Compilação de Códigos em C

A compilação de códigos em C é uma tarefa comum para os desenvolvedores. Aqui estão alguns comandos úteis:

# Compila o código C que usa a biblioteca GTK+ 2.0.
gcc -o gtktest gtkTest.c `pkg-config gtk+-2.0 --cflags --libs`

# Compila o código C que usa a biblioteca matemática (math.h).
gcc -o teste teste.c -lm  

# Compila o código C com todos os avisos ativados.
gcc -Wall nome_do_arquivo.c -o nome_do_executável
    

🖥️ Verificação de Hardware

Verificar o hardware do sistema pode ajudar a diagnosticar problemas. Aqui estão alguns comandos úteis:

# Exibe informações sobre a placa de vídeo.
sudo lshw -c video

# Lista todos os dispositivos VGA e Display conectados ao sistema.
lspci -nn | grep -E 'VGA|Display'
    

🌐 Configuração de Rede e GUI

Configurar corretamente a rede e a interface gráfica do usuário pode melhorar a experiência do usuário. Aqui estão alguns comandos úteis:

# Desativa o IPv6 para todas as interfaces.
sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1

# Desativa o IPv6 para todas as interfaces futuras.
sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1

# Desativa o IPv6 para a interface de loopback (localhost).
sudo sysctl -w net.ipv6.conf.lo.disable_ipv6=1

# Reinicia a GUI no Ubuntu.
ALT+F2 => r

# Ativa o modo noturno.
gsettings set org.gnome.settings-daemon.plugins.color night-light-enabled true

# Ajusta a temperatura da cor para o modo noturno.
gsettings set org.gnome.settings-daemon.plugins.color night-light-temperature 3000

# Atualiza todos os pacotes snap e a loja snap.
snap-store --quit | sudo snap refresh | sudo snap refresh snap-store

# Lista todos os serviços em execução.
systemctl --type=service --state=running

# Navega até o diretório onde estão localizados os arquivos de lista de fontes do APT.
cd /etc/apt/sources.list.d  
    

📝 Manipulação de Texto

A manipulação de texto é uma tarefa comum no terminal. Aqui estão alguns comandos úteis:

# Procura por uma string específica dentro de um arquivo PDF.
pdfgrep "nome_a_ser_achado" nome_arquivo.pdf

# Lista os 10 maiores arquivos de log.
ls -lS /var/log/*log | head

# Procura por um arquivo em todo o sistema de arquivos.
sudo find / -type f -name "nome_do_arquivo_*.*"

# Move arquivos e adiciona a data atual ao nome.
for file in $(ls nome_arquivo_ou_extensão); do mv "$file" NOVO_LOCAL_ARQUIVO/"${file%.*}-$(date +%Y-%m-%d)"; done

# Cria um arquivo requirements.txt para um projeto Python, listando todas as dependências.
pip freeze > requirements.txt

# Procura o endereço de um IP usando o comando whois.
awk -F, '{print $1}' geoip.txt | xargs -I{} whois {} |grep 'address'

# Filtra URLs específicas de um arquivo de texto.
cat grupo_autistas.txt |grep -Eo 'https?://[^\ ]+' | grep 'linkedin' > lista_linkedin.txt
    

🔒 Configuração de Git e VPN

Configurar corretamente o Git e a VPN pode melhorar a experiência do usuário. Aqui estão alguns comandos úteis:

# Configura o Git para lembrar suas credenciais por um tempo padrão de 15 minutos.
git config --global credential.helper cache

# Configura o Git para lembrar suas credenciais por uma hora.
git config --global credential.helper 'cache --timeout=3600'

# Link para um tutorial sobre como configurar um adaptador Ethernet USB no Ubuntu.
https://www.mendrugory.com/post/no-ethernet-ubuntu/
    

🔍 Busca de Arquivos

Buscar arquivos é uma tarefa comum no terminal. Aqui estão alguns comandos úteis:

# Procura os maiores arquivos no sistema.
# Link: https://www.cyberciti.biz/faq/linux-find-largest-file-in-directory-recursively-using-find-du/

# Procura por um arquivo em todo o sistema de arquivos.
sudo find / -type f -name "nome_do_arquivo_*.*"

# Move arquivos e adiciona a data atual ao nome.
for file in $(ls nome_arquivo_ou_extensão); do mv "$file" NOVO_LOCAL_ARQUIVO/"${file%.*}-$(date +%Y-%m-%d)"; done
    

🌙 Configuração de GUI

Configurar corretamente a interface gráfica do usuário pode melhorar a experiência do usuário. Aqui estão alguns comandos úteis:

# Reinicia a GUI no Ubuntu.
ALT+F2 => r

# Ativa o modo noturno.
gsettings set org.gnome.settings-daemon.plugins.color night-light-enabled true

# Ajusta a temperatura da cor para o modo noturno.
gsettings set org.gnome.settings-daemon.plugins.color night-light-temperature 3000
    

📚 Manipulação de Texto

A manipulação de texto é uma tarefa comum no terminal. Aqui estão alguns comandos úteis:

# Procura por uma string específica dentro de um arquivo PDF.
pdfgrep "nome_a_ser_achado" nome_arquivo.pdf

# Filtra URLs específicas de um arquivo de texto.
cat grupo_autistas.txt |grep -Eo 'https?://[^\ ]+' | grep 'linkedin' > lista_linkedin.txt
    

🔒 Configuração de Git e VPN

Configurar corretamente o Git e a VPN pode melhorar a experiência do usuário. Aqui estão alguns comandos úteis:

# Configura o Git para lembrar suas credenciais por um tempo padrão de 15 minutos.
git config --global credential.helper cache

# Configura o Git para lembrar suas credenciais por uma hora.
git config --global credential.helper 'cache --timeout=3600'

# Link para um tutorial sobre como configurar um adaptador Ethernet USB no Ubuntu.
https://www.mendrugory.com/post/no-ethernet-ubuntu/