Aprenda Linux

Comando de histórico no Linux com exemplos

Comando de histórico no Linux com exemplos

O comando history no Linux não é um jargão complexo. É exatamente o que você pensa que é, e não há nenhum significado oculto por trás disso. Da mesma forma que você olha para o histórico do seu navegador após um longo dia na internet é como você percebe o comando history. É tudo sobre como rastrear seus movimentos e ações anteriores, mas neste caso, é em um terminal Linux ou linha de comando.

Portanto, podemos definir confortavelmente o comando de histórico no domínio Linux como uma forma de visualizar os comandos executados anteriormente. Neste caso, podemos olhar para o terminal como um navegador onde você executa vários comandos em um período de tempo contínuo. Esses comandos executados são interpretados individualmente como eventos. Cada evento é então atribuído a um número de evento. Portanto, temos comandos com ids como números de eventos armazenados em um arquivo de histórico após sua execução no terminal.

A importância dos ids de evento é evidente quando você pode precisar mais tarde chamar de volta um comando específico que você executou. Além disso, você pode querer modificar um comando executado anteriormente. Portanto, podemos concluir o entendimento introdutório do comando de histórico para exibir todos os comandos executados anteriormente ou apenas um comando específico no terminal. Além disso, não devemos esquecer a opção viável de modificar o comando listado.

Deixando a História se repetir

Podemos começar este artigo histórico de uma forma divertida e citando George Santayana. Este famoso indivíduo associa a incapacidade de lembrar o passado com a maldição de repeti-lo. No entanto, quando entramos no universo Linux, esta citação apenas se qualifica como um mito. É porque a filosofia do Linux é realisticamente o oposto da citação de George Santayana. Quando estiver no terminal Linux, se você não conseguir se lembrar de uma ação passada, não há necessidade de se preocupar com isso, porque as chances são contra que nunca se desfaça.

A menos, é claro, que você se torne um mestre no comando de história do Linux, então você pode viajar no tempo para o passado e corrigir seus pecados de terminal anteriores se esse for o seu desejo. O uso do comando de histórico do Linux não é de forma alguma associado à preguiça. Isso economiza tempo por meio da eficiência. À medida que avança para dominar o sistema operacional Linux, você se verá trabalhando com comandos mais longos e complicados. Mesmo se você comparar seu QI com o de Albert Einstein, você não terá tempo para se lembrar de todos os comandos que executa e logo começa a cometer erros terríveis. Trabalhar no terminal Linux irá expor um indivíduo a dois tipos de erros:

Você pode pensar no comando de história como o guerreiro ninja que erradica esses dois tipos de erros para aumentar sua produtividade. Uma palavra para pensar antes de começarmos o tutorial, há mais no comando de histórico do Linux do que apenas usar a tecla de seta para cima do teclado. Nossa abordagem fará com que você pareça mais profissional.

Digite o comando de histórico do Linux

Iniciar o comando history é tão fácil quanto digitar a palavra history no seu terminal Linux. Então, ligue seu terminal e passe neste teste de ortografia simples.

história

comando de história

Se você pressionar Enter, você obterá uma lista de todos os comandos que você executou no terminal com seus IDs atribuídos ou números de evento. O sistema de numeração que a interface do terminal Linux usa descreve o comando mais antigo no topo da lista e o comando recém-digitado na parte inferior da lista. Como você pode ver, o comando de histórico que acabei de digitar recebeu o número de identificação 24.

lista de comandos de histórico

Considere o cenário de um terminal Linux muito ativo. Se tivéssemos que digitar o comando de histórico neste terminal, a saída seria, digamos, uma lista de 500 comandos salvos no arquivo de histórico. Portanto, o comando de histórico é útil na filtragem de um segmento agrupado especificado de comandos. Digamos que queremos ver os últimos 10 comandos executados no terminal. Vamos filtrar nosso caminho através do terminal digitando o seguinte.

história 10

últimos dez comandos no arquivo de histórico

Como você pode ver, o comando 'history 10' filtrou os últimos dez comandos usados ​​neste terminal e os listou em nosso terminal com inclusão no comando 'history 10'.

Essa é uma maneira de atingir este objetivo. Outra maneira nerd de fazer isso é canalizar o comando de histórico com outro comando chamado comando tail. Digite o seguinte comando, conforme retransmitido na imagem abaixo.

história | cauda -n 10

usando o comando tail para exibir os últimos dez comandos no arquivo de histórico

O comando também lista os últimos 10 comandos executados no terminal Linux, incluindo o que acabamos de executar.

Na verdade, repetindo a história

É hora da parte divertida de usar o comando history. Que tal começarmos deixando a história se repetir. Já que você está familiarizado com os comandos de histórico e seus ids de eventos associados, vamos voltar ao terminal. Para repetir um comando listado especificamente, anote seu id de evento e simule o seguinte comando, conforme ilustrado na captura de tela. Não use espaços ao digitar o comando.

!17

usando o id de evento para executar um comando anterior

No meu caso, eu queria visualizar o arquivo Linux / etc / host e foi solicitada uma senha de autenticação. Assim que minhas credenciais foram aprovadas, o comando se executou.

comando executado no arquivo de histórico

Também existe um caso em que deseja repetir o comando anterior executado. Alcançar este objetivo é tão fácil quanto digitar dois pontos de exclamação em seu terminal. Não use espaços.

!!

reexecutando o comando anterior

comando de histórico re-executado

Como você pode ver, o comando nos levou de volta ao arquivo Linux / etc / host que eu havia aberto anteriormente. Foi necessário o comando de exclamação dupla para reutilizar meu comando anterior, que foi executado por si mesmo. Talvez você esteja acostumado com a tecla de seta para cima do teclado, que exigia que você realizasse duas ações, role para cima uma vez e pressione o botão Enter. No entanto, o comando de exclamação dupla parece mais rápido e profissional, pois você só precisa realizar uma única ação.

Como o comando que usei requer privilégios Sudo, posso prefixar meus pontos de exclamação duplos com um comando Sudo para produzir o mesmo resultado esperado.

sudo !!

lidar com o comando de histórico do Sudo

Um único número de exclamação combinado com um id de evento executará o comando exibido vinculado a esse id. Um ponto de exclamação duplo permite-lhe executar o seu comando usado mais recentemente com a opção de prefixar o comando com Sudo se necessitar de um utilizador sudoer para executar.

Você também pode querer levar seu nerdice para o próximo nível e querer uma maneira de repetir o seu 3rd ou 6º comando anterior. Neste caso, você precisará anotar o id do evento associado ao comando. Você irá então combinar o id do evento com um hífen e um único ponto de exclamação da seguinte forma.

!-21

executar qualquer comando anterior no arquivo de histórico

Do meu lado, eu queria perguntar sobre meus 21st comando anterior, e acabou sendo uma solicitação de ping para o endereço IP do meu host local. Usar esta sequência de comandoséútil quando você deseja contra-verificar um comando executado anteriormente e determinar se os parâmetros que você usou para executá-lo ainda são válidos ou não tendenciosos.

Strings de Comando

Digamos que você executou algum comando em seu terminal, mas não memorizou totalmente o comando. Você está, no entanto, certo da eficácia do comando e como ele o ajudou. Saber uma parte da string que constitui este comando é muito útil. No meu caso, tenho certeza de que uma vez executarei um comando para atualizar meu sistema. Digamos que ainda não tenha memorizado totalmente este comando de atualização do sistema, mas sei que uma parte do comando contém a string 'apt' como o texto inicial do comando. Para usar este comando novamente, irei digitar o seguinte comando no meu terminal. No entanto, como a maioria dos comandos de atualização do sistema exigem a autorização de um usuário sudoer, prefiro a string de comando que desejo usar com o Sudo.

sudo !apto

comando de história com strings

Como você pode ver, eu atualizei com sucesso meu sistema Linux a partir da linha de comando sem usar o comando completo 'sudo apt update'. Este hack do manual de comando do histórico do Linux é útil ao lidar com comandos mais longos que podem ser entediantes de digitar ou podem levar a um erro de digitação persistente. Você pode estar editando um arquivo cujo caminho relativo produz um comando longo ou apenas copiando arquivos. De qualquer forma, você precisa de uma abordagem livre de estresse para reciclar seus comandos repetitivos.

Já que tocamos no aspecto de autorização dos usuários sudoer, podemos acabar batendo em uma parede se não formos cuidadosos. A maioria dos comandos de usuários com privilégios sudoer requerem o prefixo Sudo para serem executados. Portanto, digitar um comando de string como '!sudo 'para os comandos que começam com Sudo pode não ser suficiente, pois pode levar à execução de uma sequência de comando indesejada. No entanto, podemos fornecer uma rede de segurança através do uso do parâmetro: p que é um modificador de impressão. Portanto, combinar o nosso comando de string com ele deve produzir resultados como o seguinte.

!sudo: p

comando de histórico com o modificador de impressão

O comando imprimiu os comandos Sudo disponíveis que acabei de usar. Para reutilizar este comando, usarei a tecla de seta para cima do teclado e pressionarei enter para executá-lo. Se a lista mostrasse mais de um comando Sudo, eu ainda usaria a tecla de seta para cima para navegar até o comando Sudo específico que desejo reutilizar.

Estas não são todas as opções que temos ao lidar com strings. Também existe um caso em que você só conhece uma determinada string definida no comando que deseja usar. É um caso em que você não tem certeza das primeiras strings que definem o comando que você usou anteriormente. Aqui, você usará tanto o ponto de exclamação quanto o ponto de interrogação para encontrar o seu comando.

!?ping

executar um comando específico do arquivo de histórico por meio de strings

Eu usei o '!?sequência de comando ping ', que executou instantaneamente minha solicitação de ping anterior. Você pode usar esta sequência para executar comandos anteriores em seu terminal que são exclusivos de outros.

Pesquisa Interativa

Vamos supor que você tenha vários comandos anteriores que executou, e eles têm sequências de string semelhantes ou correspondentes. De todas essas dicas correspondentes, você pode querer executar apenas uma sequência de comando específica nessa dobra. Uma pesquisa interativa permite-lhe obter este comando que deseja executar. Para iniciar a pesquisa interativa, combine as teclas Ctrl + r. A tela do seu terminal Linux deve ser semelhante a esta abaixo.

comando histórico e pesquisa interativa

Basta digitar a pista de pesquisa para o comando que você precisa executar. No meu caso, digitei 'apt' e, como você pode ver, ele apareceu entre o apóstrofo e o crase. Você pode digitar mais pistas de string sobre o comando consultado, e a pesquisa interativa atualizará continuamente os resultados relacionados. Pressionar enter executará imediatamente o comando encontrado.

atualização do apt sudo

usando pesquisa interativa

Além disso, você pode querer editar o comando encontrado antes de executá-lo. Para fazer isso, use as setas esquerda e direita do teclado. O comando encontrado agora será exibido no terminal, onde você pode fazer as alterações necessárias.

sudo apt update && cd FOSSLinux

editando uma busca interativa

Excluindo Comandos de Histórico

Até agora, você pode recuperar, consultar, atualizar e executar comandos do arquivo de histórico. No entanto, você pode estar procurando uma maneira de esvaziar a lista de histórico de alguns ou de todos os seus comandos. Talvez você seja aquele tipo de usuário que não quer que ninguém rastreie como eles usaram seu sistema Linux. O parâmetro -d ajuda você a se livrar de alguns comandos indesejados no arquivo de histórico. No meu caso, meu arquivo de histórico contém um comando incorreto com um número de identificação de evento 44.

encontrando o comando de histórico para deletar

Para me livrar deste comando com erro ortográfico, farei o seguinte no meu terminal.

história -d 44

usando o id do evento para apagar o comando de histórico

Executar o comando 'histórico' novamente mostra que o comando com erro ortográfico foi excluído.

confirmando a exclusão do comando de histórico

A opção de exclusão não se aplica apenas a um único comando, mas também cobre uma variedade de comandos. Por exemplo, considere o seguinte comando.

história -d 10 20

Este comando irá deletar as entradas do arquivo de histórico do id de evento 10 para o id de evento 20. Outro comando de histórico a considerar é o seguinte.

história -d -6

Este comando irá se livrar dos últimos seis comandos que você digitou no terminal armazenado no arquivo de histórico.

Se você quiser limpar tudo da lista de arquivos de histórico, você pode simular o seguinte comando.

história -c

limpar todos os comandos do histórico

Conclusão

Agora você tem todas as informações necessárias para decidir se o histórico do seu terminal deve ou não se repetir. Para usuários avançados, há casos em que você pode executar um aplicativo por meio do terminal e pode ser solicitado a deixar um rastro de informações confidenciais para trás. O arquivo de histórico também armazena esses dados sensíveis. Portanto, é uma boa prática sempre limpar seu arquivo de histórico antes de sair da linha de comando, especialmente em casos que levam ao armazenamento de dados confidenciais. O comando de histórico dá a você o poder de reviver os bons tempos no terminal e também corrigir seus erros de linha de comando anteriores.

Jogos HD Remasterizados para Linux que nunca tiveram uma versão Linux anterior
Muitos desenvolvedores e editores de jogos estão apresentando remasterização em HD de jogos antigos para estender a vida da franquia, por favor, os fã...
Como usar o AutoKey para automatizar jogos Linux
AutoKey é um utilitário de automação de desktop para Linux e X11, programado em Python 3, GTK e Qt. Usando sua funcionalidade de script e MACRO, você ...
Como mostrar o contador de FPS em jogos Linux
Os jogos Linux tiveram um grande impulso quando a Valve anunciou o suporte Linux para o cliente Steam e seus jogos em 2012. Desde então, muitos jogos ...