10 principais truques para o terminal

1. Execute o último comando com !!

O título diz tudo, basta digitar o seguinte em um terminal ...

!!

… Para reexecutar o último comando inserido. Este truque é muito útil quando nos esquecemos de entrar sudo Ao começo. Nesse caso, você teria que inserir:

suor !!

Para descobrir maneiras mais complexas de obter o máximo deste truque, recomendo a leitura deste post antigo.

2. Execute o último comando, mas corrigindo um erro de digitação

Este truque é muito útil quando inserimos um comando com um erro de digitação simples. Por exemplo, se executarmos:

eco "desdelinuxz"

Você pode corrigi-lo inserindo o seguinte:

^z

3. Invoque um editor de texto para inserir um comando longo

Às vezes, você precisa inserir comandos infinitos no terminal. Nesse caso, a ajuda de um editor de texto simples, como nano ou emacs, pode ser útil.

Para abrir o editor, basta pressionar Ctrl + x + e em um terminal. O texto que você digitou até agora será copiado para o editor de texto assim que for aberto.

Por sua vez, o editor a utilizar será o especificado na variável $ EDITOR. Para alterar esta configuração, é possível executar ...

export EDITOR = nano

… Substituindo o nano por seu editor preferido.

4. Execute um comando sem salvá-lo no histórico

Um verdadeiro hacker não pode ignorar esse truque. Como todos sabem, o bash salva o histórico de comandos executados, que é muito fácil de acessar usando as setas do teclado ou Ctrl + R (para realizar um pesquisa reversa na historia).

Neste caso, o que você deve fazer para que o comando inserido não seja salvo no histórico é colocar um espaço na frente:

comando

5. Coloque automaticamente o último parâmetro de um comando

Suponha que o comando executado anteriormente foi

arquivo cp.txt / var / www / wp-content / uploads / 2009/03 /

Para acessar o diretório em questão, você pode inserir o comando cd seguido de Alt +. o Esc +. :

cd 'ALT +.'

Esta é apenas uma forma abreviada de inserir:

cd / var / www / wp-content / uploads / 2009/03 /
Continuando a pressionar o atalho de teclado mencionado, é possível navegar no histórico dos últimos comandos executados.

6. Execute um comando em um horário especificado

Sim, sim, é para isso que existe cron. No entanto, às vezes queremos executar um comando para ser executado em um determinado momento, mas apenas uma vez.

Suponha que queremos executar o comando ls -l a meia noite. Nesse caso, devemos executá-lo da seguinte forma:

echo "ls -l" | à meia-noite

7. Obtenha seu IP externo

Graças ao serviço prestado por http://ifconfig.me/ É possível saber várias informações sobre sua conexão de Internet, diretamente do terminal:

curl ifconfig.me/ip // endereço IP curl ifconfig.me/host // Servidor remoto curl ifconfig.me/ua // Agente do usuário curl ifconfig.me/port // Porta

8. Aprenda a usar Ctrl + u e Ctrl + y

Quantas vezes você já começou a digitar um comando e se lembrou que antes era necessário fazer outra coisa? Bem, é possível fazer uma espécie de cut-paste para que depois seja mais fácil reinserir o comando que sobrou na metade.

Suponha que você começou a escrever ...

cd / home / user

e você lembrou que antes precisava verificar algo no diretório atual. Nesse caso, pressione Ctrl + u (Seria algo como um "corte").

Digite o comando que precisava ser executado primeiro. Suponha ...

ls -l

... e então pressione Ctrl + y (Funciona como uma "pasta").

9. Limpe o terminal facilmente

Com Ctrl + l o terminal pode ser limpo em um instante.

10. Vá para um diretório, execute um comando e retorne ao diretório atual

Este truque é uma delícia. Para executar uma série de comandos sem sair do diretório atual, basta agrupá-los entre parênteses. Como quase todo mundo sabe, para executar uma série de comandos, você deve concatená-los usando &&. Usando esses conceitos, podemos executar algo como o seguinte:

(cd / tmp && ls)

O resultado deste comando (observe os parênteses) será uma lista dos arquivos e diretórios dentro da pasta / Tmp. Tudo sem sair do nosso diretório atual. Uma joia!

Brinde. Liste os comandos mais usados

Vê-los comandos mais usados apenas execute o seguinte:

história | awk '{a [$ 2] ++} END {for (i in a) {print a [i] "" i}}' | sort -rn | cabeça

No meu caso, os vencedores foram:

450 yaourt 415 sudo 132 git 99 cd 70 leafpad 70 killall 68 ls 52 pacman 50 xrandr 45 top

Para fãs de terminal, como este servidor, recomendo visitar linha de comando fu. Além disso, por que não, não pare de olhar para o arquivo do nosso blog.

Faltam truques? Não se esqueça de compartilhar e comentar abaixo. 🙂

Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   raposa dito

    Teve um que eu usei que omitia letras maiúsculas no meu inputrc, porque honestamente muitos arquivos que começavam assim iriam escorregar para dentro de mim.

  2.   Jesus Perales dito

    Eu acho que um dos mais importantes é o comando de histórico no qual ele retorna uma lista numerada
    dos comandos que usou e se quiser usar algum deles basta usar a seguinte linha
    ! 22

    que irá executar o comando que está em seu histórico no número 22 😀

    Para procurar um comando com preenchimento automático é
    Ctrl + r

    1.    Xurxo dito

      Também sempre uso Ctrl + r para repetir o último comando; assim que o último aparecer, você pode rolar para trás no histórico pressionando a seta para cima.

      Saudações.

  3.   Rodrigo bravo dito

    Bom artigo. Obrigado por compartilhar essas dicas.
    Quero compartilhar um que uso diariamente que é 'fg', que permite abrir os aplicativos que você interrompeu anteriormente com 'Ctrl + z'.

    1.    moela dito

      E com 'bg' você os envia para segundo plano 🙂

    2.    vamos usar linux dito

      Olhe para você ... bom truque! Obrigado por compartilhar isso.
      Abraço! Paulo.

  4.   Gabriel dito

    O post é excelente, sempre te fazem lembrar coisas que você sabia e acabou esquecendo, mas que são muito úteis.

  5.   Qvic dito

    Os cheats terminais são sempre bem-vindos.
    Incrivelmente, eu não sabia que a adição de um espaço ao comando foi omitida do histórico.
    Muito obrigado cumprimentos!!

  6.   Ezequiel dito

    para usar o histórico de filtragem de preenchimento automático, adicione o arquivo $ HOME / .inputrc
    "\ E [5 ~": histórico de pesquisa para trás
    "\ E [6 ~": histórico de pesquisa

    e, por exemplo, em algum momento você usou:
    $ cd / um / caminho / mais longo / que / a / merda

    e agora você deseja usá-lo novamente, você deve fazer:
    $cd
    e, em seguida, pressione as teclas "Page Up" ou "Page Down" para navegar por todos os comandos no histórico que começam com "cd".

    1.    moela dito

      OU…. Sem editar nada, pressione Ctrl + R e depois cd (se você quiser pesquisar algo com 'cd') e pressionando Ctrl + R repetidamente você verá todos os comandos que o contêm até chegar ao que deseja. Obviamente, se for o imediatamente anterior, você receberá um.

    2.    vamos usar linux dito

      Muito bom!

  7.   formiga dito

    Na verdade, ls / tmp deve ser suficiente para listar o diretório sem sair do atual.

  8.   Slayerkorn dito

    Você também pode concatenar o comando usando ";" como no exemplo n ° 10 seria assim:

    (cd / tmp; ls)

    lembranças

    1.    Ruda Macho dito

      Ele ";" Funciona de forma diferente do "&&" (e), quando fazemos command-1 && command-2 o segundo comando só é executado se a saída do primeiro for "0", ou seja, sem erro. No caso do ponto-e-vírgula, o segundo comando é executado independentemente da saída do primeiro. Para estender, existe o operador «||» (ou), neste caso o segundo comando é executado apenas se o primeiro gerar um erro na saída. Saudações.

  9.   anônimo dito

    Para que cada linha que lembra do histórico tenha data e hora, há uma variável de ambiente no ~ .bashrc do usuário normal ou root.

    #nano.bashrc
    exportar HISTTIMEFORMAT = »% F% T»

    # história
    492 2014-09-02 14:25:57 revdep-rebuild -i -v
    493 2014-09-02 14:31:14 eclean-dist -d
    494 2014-09-02 14:31:23 localepurge -v
    495 2014-09-02 14:31:29 etc-update
    496 2014-09-02 14:31:54 emerge –depclean –pretend
    497 2014-09-02 14:39:08 updatedb

    Existem mais opções, que são para a quantidade de linhas que ele salva, estou testando.

  10.   mandril T dito

    Postagem muito boa. Muito útil mesmo. O truque número 4, de executar um comando sem salvá-lo na história, só funcionou para mim no Ubuntu, não no Debian ou no Centos.

    1.    Azureus dito

      Funcionou para mim em framboesa e não em arco.

  11.   Chaparral dito

    Merveilleux!!

  12.   Erjuak dito

    Olá,
    o que colocar um espaço antes de executar um comando para que não fique registrado no histórico, pois não funciona ...
    [usuário @ host /] $ ls -l
    104 total
    dr-xr-xr-x. 2 root root 4096 21 de agosto 03:55 bin
    dr-xr-xr-x. 5 root root 3072 20 de agosto 17:26 boot
    drwxr-xr-x. 2 root root 4096 9 de dezembro de 2013 cgroup

    [usuário @ host /] $ histórico
    1024 ls
    1025 ls
    1026 história
    1027 ls -l
    1028 história

    artigo interessante..

    Uma saudação

  13.   Erjuak dito

    Desculpe, por não ler todos os posts,
    O teste também é feito em centos.

  14.   eliotime3000 dito

    Bom com Ctrl + U e Ctrl + Y.

  15.   NauTiluS dito

    No meu sistema, a lista dos comandos mais usados ​​funcionou para mim, alterando a variável para $ 5.

    Exemplo de saída:

    1122 sudo
    362 ls
    279 claro
    214 cd
    142 cava
    141 iogurtes
    130vnstat
    122 mv
    112 serra
    História 112

    Isso ocorre porque em meu arquivo .bashrc, tenho a seguinte linha:
    # Mostra a data para o comando histórico
    exportar HISTTIMEFORMAT = '% F% T:'

    Tenho quase certeza de que muitos por aqui usaram vários terminais ao mesmo tempo.
    Agora, não sei se te digo que é um truque de terminal, mas como geralmente tenho muitas janelas ou uso a tela para ter vários terminais abertos, isso habilita qualquer comando inserido em um desses terminais, pois isso se refletirá em tudo.

    Isso vai para o arquivo .bashrc:

    HISTSIZE = 90000
    HISTFILESIZE = $ HISTSIZE
    HISTCONTROL = ignorespace: ignoreups

    história () {
    _bash_history_sync
    história embutida "$ @"
    }

    _bash_history_sync () {
    história embutida -a # 1
    HISTFILESIZE = $ HISTSIZE # 2
    história embutida -c # 3
    história embutida -r # 4
    }

    PROMPT_COMMAND = _bash_history_sync

    1.    vamos usar linux dito

      Muito boa contribuição! Obrigado por passar.
      Abraço! Paulo.

  16.   Roy dito

    Parabéns pelo artigo.
    Muito prático e aprendi alguns comandos.

  17.   linuXgirl dito

    Apesar de já ser um pouco "experiente" nestes assuntos, estes truques são sempre apreciados, por isso… para o tronco dos truques !!!

  18.   sem nome dito

    ótimo, obrigado pelos truques, eles são muito úteis 😀

  19.   Vinsuk dito

    Os caminhos do console são inescrutáveis ​​😉

  20.   desidratador dito

    O truque de pressionar control + ue control + y não depende do shell, mas da configuração que o tty possui. Até hoje, no Linux, os tty são entidades muito complexas. Na verdade, tenho investigado sua operação e posso garantir que eles têm muito mais prós e contras do que parece. Os tty possuem alguns caracteres de controle que mudam de status, por exemplo já me aconteceu algumas vezes que procuro um arquivo binário, e depois que todo o "lixo" aparece na tela, o prompt está estranho ou com outra codificação. Isso ocorre porque em um arquivo aleatório há uma grande probabilidade de encontrar caracteres de controle tty.

    Por exemplo, execute isto em um shell:

    imprimir '33c'

    Isso limpará a tela (como se você executasse tudo limpo).

    Outras combinações, como control + L para limpar a tela, vêm do próprio shell que está sendo usado, o clássico / bin / shells geralmente não trazem esse recurso.

    Além disso, hoje existem muitas opções complexas para lidar com arquivos e soquetes no Linux. Por exemplo, se você abrir um dispositivo tty usando open (), no modo AIO (Asynchronous Input / Output), o processo receberá um SIGIO toda vez que houver dados disponíveis no buffer de entrada.

    Se, por exemplo, o bash funciona simplesmente lendo as linhas e executando comandos (como faz ao executar um script), ao pressionar control + L, esta sequência de caracteres seria simplesmente incluída como parte dos comandos, mas como o bash tem controle do buffer de entrada pode detectá-lo.

    Por exemplo, às vezes, quando estou programando, passei a usar fcntl para obter um buffer de entrada sem bloqueio, que usei mesmo com bibliotecas ncurses (manipule o tty de controle antes de iniciar ncurses no programa).

    Saludos!

  21.   Lautaro dito

    Para quem não trabalhou com o espaço no início, e talvez para adicioná-lo à nota, existe uma variável chamada HISTIGNORE onde o caractere que é adicionado antes de um comando é configurado para ser ignorado no histórico.
    Em algumas instalações, esta variável não vem de
    Saudações e bom post! direto para favoritos!

    Reparem que nos comentários também vi várias coisas interessantes .. !!

  22.   Ramón Hidalgo dito

    Tudo realmente muito útil. Obrigado.