Sou capaz de usar o history
comando no CentOS para obter a lista de comandos inseridos anteriores, no entanto, se eu fizer algo como !372
:, o history tentará executar o comando referenciado.
Eu preciso que o comando de execução anterior apareça no cursor atual. Aqui está um exemplo:
[dev@home ~]$ previous_command_no_execute!372
!372
e ela será expandida para você.Você pode usar Ctrlre digitar alguns caracteres do comando original, por exemplo
acima eu digitei
Ctrl-r /etc
e puxou osudo /etc/init.d/apache2 restart
comando da históriafonte
history | grep 372
deve funcionar, certo?Editar:
Além disso, você pode fazer algo como
echo !372 > /dev/clip
colocar o diretório de comando na sua área de transferência.fonte
O MDMarra ofereceu o caminho mais fácil (
history|grep
e copie / cole usando o ambiente da área de trabalho, supondo que você tenha um). Fornecerei o que chamo da maneira mais difícil, que funciona se você não tiver um ambiente de área de trabalho ou mouse.Supondo que você esteja executando o bash como seu shell:
$ set -o vi
$ ESC372k
(agora você terá o comando que executou 372 comandos atrás, na linha, e estará no
vi
modo de comando -style. Edite como faria se estivesse usandoex
/vi
)fonte
vi
edição para edição com estilo. Ele deve funcionar assim que vocêset -o vi
e todo o seu histórico (o modo de edição é apenas uma interface para o histórico de comandos do shell e outras coisas).A maneira mais simples e rápida de fazer o que você quer é executar:
seguido por Entere↑
fonte
Você está em um sistema ou servidor de desktop?
No meu sistema desktop Kubuntu com o shell aberto, ele suporta o destaque com o mouse. Normalmente, apenas realço o texto com o mouse e clico no botão do meio do mouse para colá-lo. Isso funcionaria para você?
Então você pode grep para o comando. Realce o texto. Cole-o com o botão do meio do mouse e edite-o.
Pode haver uma maneira melhor, mas isso funciona para mim.
fonte
não há nenhum comando para colar automaticamente, mas você pode recuperar qualquer comando em um editor para editá-lo antes de executar. isso pode alcançar o que você está procurando, mas, ao sair do comando, o comando será executado. Se você deseja abortar, limpe seu buffer de edição antes de sair do editor.
fc -e vi 372 372
fonte