Usando! recuperação de histórico bash para comandos que começam com um dígito?

3

É possível usar ! para executar novamente uma linha de comando bash que começa com um dígito? Eu sei que, normalmente , !<digit> seleciona um comando por posição e !<text> seleciona um comando por texto. Eu estou querendo saber se a interpretação <text> pode ser forçada.

Meu caso de uso é 7-zip, /usr/bin/7z . Eu freqüentemente faço 7z e *.zip em qualquer diretório que eu esteja. Eu não posso usar !7 para recuperar esse comando, em geral. Minha solução é usar Ctrl R e pesquisa de histórico interativo.

Procurei no Google e tentei ! 7 , ! , !'7' e !"7" , sem sucesso. Há algum caminho? Obrigado!

    
por cxw 07.08.2017 / 20:50

1 resposta

3

Usando

!?string

pesquisará toda a linha de comando das entradas do histórico por string , em vez de apenas coincidir com o início da linha, para que possa ser usado para corresponder aos comandos que começam com um dígito n sem ser interpretado como referência ao n th entrada no histórico.

Se forem adicionados modificadores de histórico adicionais, a cadeia de pesquisa também deve ser terminada com um ? , mas no caso de uma pesquisa e execução simples, o ? é opcional.

    
por 07.08.2017 / 21:26