O que vou aprender nesse artigo?
No mundo da computação, poucas habilidades são tão valorizadas quanto a proficiência no sistema operacional Linux e em comandos Linux. Seja você um usuário iniciante ou experiente, dominar os comandos Linux pode abrir um mundo de possibilidades e aumentar significativamente sua eficiência no uso do sistema.
Neste artigo abrangente, apresentamos os 52 comandos Linux mais usados, cuidadosamente selecionados para ajudar você a dominar o terminal como um profissional. Desde comandos básicos de navegação no sistema de arquivos até ferramentas avançadas de gerenciamento de processos e rede, este guia completo cobre todos os aspectos essenciais que você precisa conhecer para se tornar um expert em Linux.
Por Que Este Artigo é Importante?
Este artigo não apenas apresenta uma lista abrangente dos comandos Linux mais essenciais, mas também oferece explicações claras e exemplos práticos para ajudar você a compreender e aplicar cada comando em seu próprio ambiente Linux. Independentemente do seu nível de experiência, este recurso será uma referência valiosa para aprimorar suas habilidades no terminal e aproveitar ao máximo o sistema operacional Linux.
Seja você um estudante de ciência da computação, um profissional de TI ou um entusiasta do Linux, conhecer os 52 comandos Linux mais usados é uma habilidade essencial que pode impulsionar sua carreira e sua produtividade. Com este guia abrangente em mãos, você estará preparado para enfrentar qualquer desafio no terminal e navegar pelo mundo do Linux com confiança e maestria.
Nota da Deepwiki:
Este artigo foi elaborado com o objetivo de fornecer uma referência completa e acessível para aqueles que desejam aprofundar seus conhecimentos em Linux. Esperamos que você aproveite ao máximo este recurso e que ele o ajude a alcançar seus objetivos de aprendizado e crescimento profissional no mundo da tecnologia.
Os 52 comandos Linux mais usados :
1. Comando “pwd”
O pwd
comando significa “imprimir diretório de trabalho” e exibe o caminho absoluto do diretório em que você está. Por exemplo, se seu nome de usuário for “john” e você estiver no diretório Documentos, seu caminho absoluto seria: /home/john/Documents
.
Para utilizá-lo, basta digitar pwd
no terminal:
pwd
# My result: /home/kinsta/Documents/linux-commands
2. Comando “cd”
O cd
comando é altamente popular, junto com ls
. Refere-se a “ alterar diretório ” e, como o próprio nome sugere, leva você para o diretório que você está tentando acessar.
Por exemplo, se você estiver no diretório Documentos e estiver tentando acessar uma de suas subpastas chamada Vídeos , poderá acessá-la digitando:
cd Videos
Você também pode fornecer o caminho absoluto da pasta:
cd /home/kinsta/Documents/Videos
Existem alguns truques com o cd
comando que podem economizar muito tempo ao brincar com ele:
1) Vá para a pasta inicial
cd
2) Subir um nível
cd ..
3) Retorne ao diretório anterior
cd -
3. Comando “ls”
ls
é provavelmente o primeiro comando que todo usuário Linux digitou em seu terminal. Ele permite listar o conteúdo do diretório desejado (o diretório atual por padrão), incluindo arquivos e outros diretórios aninhados.
ls
Tem muitas opções, então pode ser bom obter ajuda usando o --help
sinalizador. Este sinalizador retorna todos os sinalizadores que você pode usar com ls.
Por exemplo, para colorir a saída do ls
comando, você pode usar o seguinte:
ls --color=auto
Agora a ls
saída do comando está colorida e você pode apreciar a diferença entre um diretório e um arquivo.
Mas digitar ls
com o sinalizador colorido seria ineficiente; é por isso que usamos o alias
comando.
4. Comando “alias”
O alias
comando permite definir aliases temporários em sua sessão shell. Ao criar um alias, você instrui seu shell a substituir uma palavra por uma série de comandos.
Por exemplo, para definir ls
a cor sem digitar o --color
sinalizador todas as vezes, você usaria:
alias ls="ls --color=auto"
Como você pode ver, o alias
comando usa um parâmetro de par chave-valor: alias NAME="VALUE"
. Observe que o valor deve estar entre aspas.
Se quiser listar todos os aliases que você possui em sua sessão de shell, você pode executar o alias
comando sem argumentos.
alias
5. Comando “unalias”
Como o nome sugere, o unalias
comando visa remover um alias
dos aliases já definidos. Para remover o ls
alias anterior, você pode usar:
unalias ls
6. Comando “cp”
É tão fácil copiar arquivos e pastas diretamente no terminal Linux que às vezes pode substituir os gerenciadores de arquivos convencionais.
Para usar o cp
comando, basta digitá-lo junto com os arquivos de origem e destino:
cp file_to_copy.txt new_file.txt
Você também pode copiar diretórios inteiros usando o sinalizador recursivo:
cp -r dir_to_copy/ new_copy_dir/
Lembre-se de que no Linux as pastas terminam com uma barra ( /
).
7. Comando “rm”
Agora que você sabe como copiar arquivos, será útil saber como removê-los.
Você pode usar o rm
comando para remover arquivos e diretórios. Tenha cuidado ao usá-lo, porque é muito difícil (mas não impossível) recuperar arquivos excluídos dessa forma.
Para excluir um arquivo normal, você digitaria:
rm file_to_copy.txt
Se quiser excluir um diretório vazio, você pode usar o -r
sinalizador recursivo ( ):
rm -r dir_to_remove/
Por outro lado, para remover um diretório com conteúdo dentro dele, você precisa usar os flags force (-f) e recursivos:
rm -rf dir_with_content_to_remove/
Informações
Tenha cuidado com isso – você pode apagar um dia inteiro de trabalho usando indevidamente essas duas bandeiras!
8. Comando “mv”
Você usa o mv
comando para mover (ou renomear) arquivos e diretórios através do seu sistema de arquivos.
Para usar este comando, você digitaria seu nome com os arquivos de origem e destino:
mv source_file destination_folder/
mv command_list.txt commands/
Para utilizar caminhos absolutos, você usaria:
mv /home/kinsta/BestMoviesOfAllTime ./
…onde ./
está o diretório em que você está atualmente.
Você também pode usar mv
para renomear arquivos enquanto os mantém no mesmo diretório:
mv old_file.txt new_named_file.txt
9. Comando “mkdir”
Para criar pastas no shell, você usa o mkdir
comando. Basta especificar o nome da nova pasta, garantir que ela não exista e pronto.
Por exemplo, para criar um diretório para guardar todas as suas imagens , basta digitar:
mkdir images/
Para criar subdiretórios com um comando simples, use o -p
sinalizador parent ( ):
mkdir -p movies/2004/
10. Comando “man”
Outro comando essencial do Linux é man
. Ele exibe a página de manual de qualquer outro comando (desde que tenha um).
Para ver a página de manual do mkdir
comando, digite:
man mkdir
Você pode até consultar a man
página de manual:
man man
11. Comando “touch”
O touch
comando permite atualizar os tempos de acesso e modificação dos arquivos especificados.
Por exemplo, tenho um arquivo antigo que foi modificado pela última vez em 12 de abril:
Para alterar sua data de modificação para a hora atual, precisamos usar o -m
sinalizador:
touch -m old_file
Agora a data corresponde à data de hoje (que no momento em que este artigo foi escrito era 8 de agosto).
No entanto, na maioria das vezes, você não usará touch
para modificar datas de arquivos, mas sim para criar novos arquivos vazios:
touch new_file_name
12. Comando “chmod”
O chmod
comando permite alterar o modo de um arquivo (permissões) rapidamente. Tem muitas opções disponíveis.
As permissões básicas que um arquivo pode ter são:
- r (ler)
- w (escrever)
- x (executar)
Um dos casos de uso mais comuns chmod
é tornar um arquivo executável pelo usuário. Para fazer isso, digite chmod
e o sinalizador +x
, seguido do arquivo no qual deseja modificar as permissões:
chmod +x script
Você usa isso para tornar os scripts executáveis, permitindo executá-los diretamente usando a ./
notação.
13. Comando “./”
Talvez a ./
notação não seja um comando em si, mas vale a pena mencioná-la nesta lista. Ele permite que seu shell execute um arquivo executável com qualquer interpretador instalado em seu sistema diretamente do terminal. Chega de clicar duas vezes em um arquivo em um gerenciador de arquivos gráfico!
Por exemplo, com este comando, você pode executar um script Python ou um programa disponível apenas no formato .run, como o XAMPP . Ao executar um executável, certifique-se de que ele tenha permissões executáveis (x), que você pode modificar com o chmod
comando.
Aqui está um script Python simples e como o executaríamos com a ./
notação:
#! /usr/bin/python3
# filename: script
for i in range(20):
print(f"This is a cool script {i}")
Veja como converteríamos o script em um executável e o executaríamos:
chmod +x script
./script
14. Comando “exit”
O exit
comando faz exatamente o que o nome sugere: com ele, você pode encerrar uma sessão do shell e, na maioria dos casos, fechar automaticamente o terminal que está usando:
exit
15. Comando “sudo”
Este comando significa “super usuário” e permite que você atue como superusuário ou usuário root enquanto executa um comando específico. É assim que o Linux se protege e evita que os usuários modifiquem acidentalmente o sistema de arquivos da máquina ou instalem pacotes inadequados.
Sudo é comumente usado para instalar software ou editar arquivos fora do diretório inicial do usuário:
sudo apt install gimp
sudo cd /root/
Ele solicitará a senha do administrador antes de executar o comando digitado depois dele.
16. Comando “shutdown”
Como você pode imaginar, o shutdown
comando permite desligar sua máquina. No entanto, também pode ser usado para interrompê-lo e reiniciá-lo.
Para desligar o computador imediatamente (o padrão é um minuto), digite:
shutdown now
Você também pode programar o desligamento do sistema no formato de 24 horas:
shutdown 20:40
Para cancelar uma shutdown
chamada anterior, você pode usar o -c
sinalizador:
shutdown -c
17. Comando “htop”
htop
é um visualizador de processos interativo que permite gerenciar os recursos da sua máquina diretamente do terminal. Na maioria dos casos, ele não é instalado por padrão, portanto, leia mais sobre ele na página de download .
htop
18. Comando “unzip”
O comando unzip permite extrair o conteúdo de um arquivo .zip do terminal. Mais uma vez, este pacote pode não ser instalado por padrão, portanto, instale-o com seu gerenciador de pacotes.
Aqui, estamos descompactando um arquivo .zip cheio de imagens:
unzip images.zip
19. comandos “yum , pacman , apt”
Não importa qual distribuição Linux você esteja usando, é provável que você use gerenciadores de pacotes para instalar, atualizar e remover o software que usa todos os dias.
Você pode acessar esses gerenciadores de pacotes através da linha de comando e usar um ou outro dependendo da distribuição que sua máquina está executando.
Os exemplos a seguir instalarão o GIMP , um software gratuito e de código aberto normalmente disponível na maioria dos gerenciadores de pacotes:
Baseado em Debian (Ubuntu, Linux Mint)
sudo apt install gimp
Baseado em Red Hat (Fedora, CentOS)
sudo yum install gimp
Baseado em Arch (Manjaro, Arco Linux)
sudo pacman -S gimp
20. Comando “echo”
O echo
comando exibe o texto definido no terminal – é simples assim:
echo "Cool message"
Seu uso principal é imprimir variáveis ambientais dentro dessas mensagens:
echo "Hey $USER"
# Hey kinsta
21. Comando “cat”
Cat
, abreviação de “concatenar”, permite criar, visualizar e concatenar arquivos diretamente do terminal. É usado principalmente para visualizar um arquivo sem abrir um editor de texto gráfico:
cat long_text_file.txt
22. Comando “ps”
Com ps
, você pode dar uma olhada nos processos que sua sessão shell atual está executando. Ele imprime informações úteis sobre os programas que você está executando, como ID do processo, TTY (TeleTYpewriter), hora e nome do comando.
ps
Caso queira algo mais interativo, você pode usar htop
.
23. Comando “kill”
É irritante quando um programa não responde e você não consegue fechá-lo de forma alguma. Felizmente, o kill
comando resolve esse tipo de problema.
Simplificando, kill
envia um sinal TERM ou kill para um processo que o encerra.
Você pode encerrar processos inserindo o PID (ID de processos) ou o nome binário do programa:
kill 533494
kill firefox
Tenha cuidado com este comando – com kill
você corre o risco de excluir acidentalmente o trabalho que está fazendo.
24. Comando “ping”
ping
é o utilitário de terminal de rede mais popular usado para testar a conectividade de rede. ping
tem inúmeras opções, mas na maioria dos casos, você o usará para solicitar um domínio ou endereço IP :
ping google.com/home
ping 8.8.8.8
25. Comando “vim”
vim
é um editor de texto de terminal gratuito e de código aberto usado desde os anos 90. Ele permite editar arquivos de texto simples usando atalhos de teclado eficientes.
Algumas pessoas consideram-no difícil de usar – sair do Vim é uma das perguntas mais vistas do StackOverflow – mas quando você se acostuma, ele se torna seu melhor aliado na linha de comando.
Para iniciar o Vim, basta digitar:
vim
26. Comando “history”
Se você está lutando para lembrar de um comando, history
é útil. Este comando exibe uma lista enumerada com os comandos que você usou no passado:
history
27. Comando “passwd”
passwd
permite que você altere as senhas das contas de usuário. Primeiro, ele solicita que você insira sua senha atual e, em seguida, solicita uma nova senha e confirmação.
É semelhante a qualquer outra alteração de senha que você já viu em outro lugar, mas neste caso, está diretamente no seu terminal:
passwd
Tenha cuidado ao usá-lo – você não quer bagunçar sua senha de usuário!
28. Comando “which”
O which
comando exibe o caminho completo dos comandos shell. Se não conseguir reconhecer o comando fornecido, ocorrerá um erro.
Por exemplo, podemos usar isso para verificar o caminho binário do Python e do navegador Brave :
which python
# /usr/bin/python
which brave
# /usr/bin/brave
29. Comando “shred”
Se você sempre quis que um arquivo fosse quase impossível de recuperar , shred
podemos ajudá-lo nesta tarefa. Este comando substitui o conteúdo de um arquivo repetidamente e, como resultado, o arquivo fornecido torna-se extremamente difícil de recuperar.
Aqui está um arquivo com pouco conteúdo:
Agora, vamos shred
fazer isso digitando o seguinte comando:
shred file_to_shred.txt
Se quiser excluir o arquivo imediatamente, você pode usar o -u
sinalizador:
shred -u file_to_shred.txt
30. Comando “less”
less
(oposto de more ) é um programa que permite inspecionar arquivos para frente e para trás:
less large_text_file.txt
O legal less
é que ele inclui mais vim
comandos em sua interface. Se você precisa de algo mais interativo que o cat
, less
é uma boa opção.
31. Comando “tail”
Semelhante a cat
, tail
imprime o conteúdo de um arquivo com uma ressalva importante: ele exibe apenas as últimas linhas. Por padrão, ele imprime as últimas 10 linhas, mas você pode modificar esse número com -n
.
Por exemplo, para imprimir as últimas linhas de um arquivo de texto grande, você usaria:
tail long.txt
Para visualizar apenas as últimas quatro linhas:
tail -n 4 long.txt
32. Comando “head”
Este é complementar ao tail
comando. head
gera as primeiras 10 linhas de um arquivo de texto, mas você pode definir qualquer número de linhas que deseja exibir com o -n
sinalizador:
head long.txt
head -n 5 long.txt
33. Comando “grep”
Grep é um dos utilitários mais poderosos para trabalhar com arquivos de texto. Ele procura linhas que correspondam a uma expressão regular e as imprime:
grep "linux" long.txt
Você pode contar o número de vezes que o padrão se repete usando a -c
bandeira:
grep -c "linux" long.txt
# 2
34. Comando “whoami”
O whoami
comando (abreviação de “quem sou eu”) exibe o nome de usuário atualmente em uso:
whoami
# root
Você obteria o mesmo resultado usando echo
a variável ambiental $USER:
echo $USER
# junior
35. whatis
Comando “whatis”
whatis
imprime uma descrição de linha única de qualquer outro comando, tornando-o uma referência útil:
whatis python
# python (1) - an interpreted, interactive, object-oriented programming language
whatis whatis
# whatis (1) - display one-line manual page descriptions
36. wc
Comando “wc”
Wc significa “contagem de palavras” e, como o nome sugere, retorna o número de palavras em um arquivo de texto:
wc long.txt
# 37 207 1000 long.txt
Vamos detalhar a saída deste comando:
- 37 linhas
- 207 palavras
- Tamanho de 1000 bytes
- O nome do arquivo (long.txt)
Se você precisar apenas do número de palavras, use a -w
flag:
wc -w long.txt
207 long.txt
37. Comando “uname”
uname
(abreviação de “nome Unix”) imprime as informações do sistema operacional, o que é útil quando você conhece sua versão atual do Linux.
Na maioria das vezes, você usará o -a
sinalizador (–all), já que a saída padrão não é tão útil:
uname
# Linux
uname -a
# Linux kinstamanjaro 5.4.138-1-MANJARO #1 SMP PREEMPT Thu Aug 5 12:15:21 UTC 2021 x86_64 GNU/Linux
38. Comando “neofetch”
Neofetch é uma ferramenta CLI (interface de linha de comando) que exibe informações sobre o seu sistema – como versão do kernel, shell e hardware – próximo a um logotipo ASCII da sua distribuição Linux:
neofetch
Na maioria das máquinas, este comando não está disponível por padrão, portanto, certifique-se de instalá-lo primeiro com seu gerenciador de pacotes.
39. Comando “find”
O find
comando procura arquivos em uma hierarquia de diretórios com base em uma expressão regex. Para utilizá-lo, siga a sintaxe abaixo:
find [flags] [path] -name [expression]
Para procurar um arquivo chamado long.txt no diretório atual, digite isto:
find ./ -name "long.txt" # ./long.txt
Para pesquisar arquivos que terminam com extensão .py (Python), você pode usar o seguinte comando:
find ./ -type f -name "*.py" ./get_keys.py ./github_automation.py ./binarysearch.py
40. Comando “wget”
wget
(World Wide Web get) é um utilitário para recuperar conteúdo da Internet. Possui uma das maiores coleções de bandeiras que existe.
Veja como você baixaria um arquivo Python de um repositório GitHub :
wget https://raw.githubusercontent.com/DaniDiazTech/Object-Oriented-Programming-in-Python/main/object_oriented_programming/cookies.py
41.Comando “ifconfig”e “traceroute”
Os ifconfig
comandos traceroute
e gerenciam interfaces de rede e rastreiam a rota de pacotes de rede no Linux.
O ifconfig
comando fornecerá a lista de todas as interfaces de rede junto com os endereços IP, endereços MAC e outras informações sobre a interface.
root@ubuntu:~ ifconfig
Existem vários parâmetros que podem ser usados, mas trabalharemos com o comando básico aqui.
O traceroute
comando é usado para rastrear a rota dos pacotes de rede e determinar o caminho que eles percorrem para chegar a um destino específico.
Ao trabalhar com traceroute
, você pode simplesmente especificar o endereço IP, o nome do host ou o nome de domínio do endpoint.
root@ubuntu:~ traceroute <destination address>
Agora, obviamente, localhost
é apenas um salto (a própria interface de rede). Você pode tentar este mesmo comando com qualquer outro nome de domínio ou endereço IP para ver todos os roteadores pelos quais seus pacotes de dados passam para chegar ao destino.
42.Comandos “df”e”mount”
Ao trabalhar com Linux, os comandos df
e mount
são utilitários muito eficientes para montar sistemas de arquivos e obter detalhes do sistema de arquivos.
O df
comando é usado para exibir a quantidade de espaço em disco usado e disponível nos sistemas de arquivos e o mount
comando é usado para montar um sistema de arquivos ou dispositivo em um diretório específico.
Quando dizemos mount
, significa que conectaremos o dispositivo a uma pasta para que possamos acessar os arquivos do nosso sistema de arquivos. A sintaxe padrão para montar um sistema de arquivos está abaixo:
root@ubuntu:~ mount /dev/cdrom /mnt
root@ubuntu:~ df -h
No caso acima, /dev/cdrom
é o dispositivo que precisa ser montado. Normalmente, um dispositivo montável é encontrado dentro da /dev
pasta. mnt
é a pasta de destino na qual montar o dispositivo. Você pode alterá-lo para qualquer pasta que desejar, mas usamos /mnt
porque é a pasta padrão do sistema para montagem de dispositivos.
Para ver os dispositivos montados e obter mais informações sobre eles, usamos o comando df. Apenas digitar df
nos dará os dados em bytes, que não são legíveis. Portanto, usaremos o -h
parâmetro para tornar os dados legíveis por humanos.
43. Comando “at”
Permite agendar a execução de tarefas em um momento específico no futuro. É útil para automatizar tarefas que precisam ser realizadas em um momento específico. Os comandos a serem executados são especificados após o comando “at”, e o momento de execução é especificado como argumento para o comando. Exemplo:
at 10:00 tomorrow
echo "Tarefa agendada" > tarefa.txt
44. Comando “script”
Inicia uma sessão de gravação que registra todas as entradas e saídas do terminal em um arquivo. É útil para registrar comandos e suas saídas para fins de auditoria ou depuração. O nome do arquivo de log pode ser especificado como argumento para o comando “script”. Exemplo:
script terminal.log
ls
exit
45. Comando “wall”
Envia uma mensagem de texto para todos os usuários conectados ao sistema. É útil para enviar notificações ou alertas importantes para todos os usuários do sistema. A mensagem é especificada como argumento para o comando “wall”. Exemplo:
wall "Manutenção programada para hoje às 22:00."
46. Comando “watch”
Executa um comando repetidamente em intervalos regulares e exibe a saída na tela. É útil para monitorar continuamente alterações em um arquivo ou diretório, ou para observar o status de um comando em execução. Exemplo:
watch -n 5 df -h
47. Comando “timeout”
Executa um comando com um limite de tempo especificado. É útil para garantir que um comando não fique travado indefinidamente. O tempo limite é especificado como argumento para o comando “timeout”. Exemplo:
timeout 30s ping google.com
48. Comando “rev”
Inverte a ordem dos caracteres em cada linha de texto. É útil para realizar operações de transformação de texto, como inverter palavras ou frases. Exemplo:
echo "Hello World" | rev
49. Comando “fold”
Quebra linhas longas de texto em várias linhas menores. É útil para melhorar a legibilidade de arquivos de texto longos, evitando que linhas muito longas se estendam para além da largura da tela. Exemplo:
echo "Lorem ipsum dolor sit amet, consectetur adipiscing elit." | fold -w 20
50. Comando “renice”
Altera a prioridade de execução de um processo em execução. É útil para ajustar a prioridade de processos para otimizar o desempenho do sistema. A nova prioridade é especificada como argumento para o comando “renice”. Exemplo:
renice -n 10 -p 1234
51. Comando “split”
Divide um arquivo em pedaços menores. É útil para dividir arquivos grandes em partes menores para facilitar o transporte ou armazenamento. O tamanho dos fragmentos e o prefixo do nome dos fragmentos são especificados como argumentos para o comando “split”. Exemplo:
split -b 1M arquivo_grande.txt
52. Comando “tee“
Lê da entrada padrão e grava simultaneamente na saída padrão e em um ou mais arquivos. É útil para monitorar a saída de um comando enquanto a grava em um arquivo. O nome dos arquivos de destino é especificado como argumentos para o comando “tee”. Exemplo:
ls -l | tee lista_arquivos.txt