Pesquisa de site

10 truques úteis de linha de comando do Linux para iniciantes - Parte 2


Lembro-me de quando comecei a usar Linux e estava acostumado com a interface gráfica do Windows, eu realmente odiava o terminal Linux. Naquela época eu achava difícil lembrar os comandos e usar corretamente cada um deles. Com o tempo percebi a beleza, flexibilidade e usabilidade do terminal Linux e para ser sincero não passa um dia sem usá-lo. Hoje, gostaria de compartilhar alguns truques e dicas úteis para iniciantes no Linux para facilitar sua transição para o Linux ou simplesmente ajudá-los a aprender algo novo (espero).

  1. 5 dicas e truques interessantes de linha de comando no Linux – Parte 1
  2. 5 comandos úteis para gerenciar tipos de arquivos Linux – Parte 3

Este artigo pretende mostrar alguns truques úteis sobre como usar o terminal Linux como um profissional com um mínimo de habilidades. Tudo que você precisa é de um terminal Linux e algum tempo livre para testar esses comandos.

1. Encontre o comando certo

Executar o comando correto pode ser vital para o seu sistema. No entanto, no Linux existem tantas linhas de comando diferentes que muitas vezes são difíceis de lembrar. Então, como você procura o comando certo de que precisa? A resposta é a propósito. Tudo que você precisa para executar é:


# apropos <description>

Onde você deve alterar a “descrição” pela descrição real do comando que você está procurando. Aqui está um bom exemplo:


# 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

À esquerda você pode ver os comandos e à direita sua descrição.

2. Execute o comando anterior

Muitas vezes você precisará executar o mesmo comando repetidamente. Embora você possa pressionar repetidamente a tecla Para cima no teclado, você pode usar o comando histórico. Este comando listará todos os comandos que você digitou desde que iniciou o terminal:


# history

    1  fdisk -l
    2  apt-get install gnome-paint
    3  hostname linux-console.net
    4  hostnamectl linux-console.net
    5  man hostnamectl 
    6  hostnamectl --set-hostname linux-console.net
    7  hostnamectl -set-hostname linux-console.net
    8  hostnamectl set-hostname linux-console.net
    9  mount -t "ntfs" -o
   10  fdisk -l
   11  mount -t ntfs-3g /dev/sda5 /mnt
   12  mount -t rw ntfs-3g /dev/sda5 /mnt
   13  mount -t -rw ntfs-3g /dev/sda5 /mnt
   14  mount -t ntfs-3g /dev/sda5 /mnt
   15  mount man
   16  man mount
   17  mount -t -o ntfs-3g /dev/sda5 /mnt
   18  mount -o ntfs-3g /dev/sda5 /mnt
   19  mount -ro ntfs-3g /dev/sda5 /mnt
   20  cd /mnt
   ...

Como você verá na saída acima, você receberá uma lista de todos os comandos que executou. Em cada linha você tem um número indicando a linha na qual você digitou o comando. Você pode recuperar esse comando usando:


!#

Onde # deve ser alterado pelo número real do comando. Para melhor compreensão, veja o exemplo abaixo:


!501

É equivalente a:

# history

3. Use o comandante da meia-noite

Se você não está acostumado a usar comandos como cd, cp, mv, rm, você pode usar o comando da meia-noite. É um shell visual fácil de usar no qual você também pode usar o mouse:

Graças às teclas F1 – F12, você pode realizar facilmente diferentes tarefas. Basta verificar a legenda na parte inferior. Para selecionar um arquivo ou pasta clique no botão “Inserir”.

Resumindo, o comando da meia-noite é chamado de “mc“. Para instalar mc em seu sistema simplesmente execute:


$ sudo apt-get install mc        [On Debian based systems]

# yum install mc                 [On Fedora based systems]

Aqui está um exemplo simples de uso do comandante da meia-noite. Abra mc simplesmente digitando:


# mc

Agora use o botão TAB para alternar entre as janelas – esquerda e direita. Eu tenho um arquivo LibreOffice que irei mover para a pasta “Software”:

Para mover o arquivo para o novo diretório pressione o botão F6 no teclado. MC irá agora pedir-lhe uma confirmação:

Depois de confirmado, o arquivo será movido para o novo diretório de destino.

Leia mais: Como usar o gerenciador de arquivos Midnight Commander no Linux

4. Desligue o computador em um horário específico

Às vezes, você precisará desligar o computador algumas horas após o término do horário de trabalho. Você pode configurar seu computador para desligar em um horário específico usando:


$ sudo shutdown 21:00

Isso dirá ao seu computador para desligar no horário específico que você forneceu. Você também pode solicitar que o sistema desligue após um determinado período de minutos:


$ sudo shutdown +15

Dessa forma, o sistema será desligado em 15 minutos.

5. Mostre informações sobre usuários conhecidos

Você pode usar um comando simples para listar os usuários do sistema Linux e algumas informações básicas sobre eles. Basta usar:


# lslogins

Isso deve trazer a seguinte saída:


UID USER PWD-LOCK PWD-DENY LAST-LOGIN GECOS
0 root 0 0 Apr29/11:35 root
1 bin 0 1 bin
2 daemon 0 1 daemon
3 adm 0 1 adm
4 lp 0 1 lp
5 sync 0 1 sync
6 shutdown 0 1 Jul19/10:04 shutdown
7 halt 0 1 halt
8 mail 0 1 mail
10 uucp 0 1 uucp
11 operator 0 1 operator
12 games 0 1 games
13 gopher 0 1 gopher
14 ftp 0 1 FTP User
23 squid 0 1
25 named 0 1 Named
27 mysql 0 1 MySQL Server
47 mailnull 0 1
48 apache 0 1 Apache
...

6. Procure por arquivos

Às vezes, procurar arquivos pode não ser tão fácil quanto você pensa. Um bom exemplo de busca de arquivos é:


# find /home/user -type f

Este comando irá procurar todos os arquivos localizados em /home/user. O comando find é extremamente poderoso e você pode passar mais opções para ele para tornar sua busca ainda mais detalhada. Se quiser pesquisar arquivos maiores que o tamanho determinado, você pode usar:


# find . -type f -size 10M

O comando acima irá pesquisar no diretório atual todos os arquivos maiores que 10 MB. Certifique-se de não executar o comando no diretório raiz do seu sistema Linux, pois isso pode causar alta E/S em sua máquina.

Uma das combinações mais usadas com find é a opção “exec”, que basicamente permite que você execute algumas ações nos resultados do comando find.

Por exemplo, digamos que queremos encontrar todos os arquivos em um diretório e alterar suas permissões. Isso pode ser feito facilmente com:


# find /home/user/files/ -type f -exec chmod 644 {} \;

O comando acima irá procurar todos os arquivos no diretório especificado recursivamente e executará o comando chmod nos arquivos encontrados. Tenho certeza que você encontrará muitos outros usos para este comando no futuro, por enquanto leia 35 exemplos de comando e uso ‘find’ do Linux.

7. Construa árvores de diretório com um comando

Você provavelmente sabe que pode criar novos diretórios usando o comando mkdir. Então se você quiser criar uma nova pasta você irá executar algo assim:


# mkdir new_folder

Mas e se você quiser criar 5 subpastas dentro dessa pasta? Executar mkdir 5 vezes seguidas não é uma boa solução. Em vez disso, você pode usar a opção -p assim:


# mkdir -p new_folder/{folder_1,folder_2,folder_3,folder_4,folder_5}

No final você deverá ter 5 pastas localizadas em new_folder:


# ls new_folder/

folder_1 folder_2 folder_3 folder_4 folder_5

8. Copie o arquivo em vários diretórios

A cópia de arquivos geralmente é realizada com o comando cp. Copiar um arquivo geralmente fica assim:


# cp /path-to-file/my_file.txt /path-to-new-directory/

Agora imagine que você precisa copiar esse arquivo em vários diretórios:


# cp /home/user/my_file.txt /home/user/1
# cp /home/user/my_file.txt /home/user/2
# cp /home/user/my_file.txt /home/user/3

Isso é um pouco absurdo. Em vez disso, você pode resolver o problema com um comando simples de uma linha:


# echo /home/user/1/ /home/user/2/ /home/user/3/ | xargs -n 1  cp /home/user/my_file.txt

9. Excluindo arquivos maiores

Às vezes, os arquivos podem ficar extremamente grandes. Já vi casos em que um único arquivo de log ultrapassou 250 GB devido a más habilidades de administração. A remoção do arquivo com o utilitário rm pode não ser suficiente nesses casos devido ao fato de que há uma quantidade extremamente grande de dados que precisam ser removidos. A operação será “pesada” e deve ser evitada. Em vez disso, você pode optar por uma solução realmente simples:


# > /path-to-file/huge_file.log

Onde, é claro, você precisará alterar o caminho e os nomes dos arquivos pelos exatos que correspondem ao seu caso. O comando acima irá simplesmente gravar uma saída vazia no arquivo. Em palavras mais simples, ele esvaziará o arquivo sem causar alta E/S no seu sistema.

10. Execute o mesmo comando em vários servidores Linux

Recentemente, um de nossos leitores perguntou em nosso fórum LinuxSay como executar um único comando em vários computadores Linux ao mesmo tempo usando SSH. Ele tinha os endereços IP de suas máquinas assim:


10.0.0.1
10.0.0.2
10.0.0.3
10.0.0.4
10.0.0.5

Então aqui está uma solução simples para esse problema. Colete os endereços IP dos servidores em um arquivo chamado list.txt, um abaixo do outro, conforme mostrado acima. Então você pode executar:


# for in $i(cat list.txt); do ssh user@$i 'bash command'; done

No exemplo acima, você precisará alterar “usuário” pelo usuário real com o qual você fará login e “comando bash” pelo comando bash real que você deseja executar . O método funciona melhor quando você usa autenticação sem senha com chave SSH em suas máquinas, pois dessa forma você não precisará inserir a senha do seu usuário repetidamente.

Observe que pode ser necessário passar alguns parâmetros adicionais para o comando SSH, dependendo da configuração da sua caixa Linux.

Conclusão

Os exemplos acima são realmente simples e espero que tenham ajudado você a descobrir um pouco da beleza do Linux e como você pode realizar facilmente diferentes operações que podem levar muito mais tempo em outros sistemas operacionais.