Eu frequentemente executo sequências de comandos administrativos interativamente no Bash. Eu leio as respostas antes de continuar, mas essas cadeias podem levar várias tentativas antes que eu fique satisfeito. Esses tipos de cadeias geralmente envolvem um único sistema com vários subcomandos, ou "ações":
sudo apt depends package
sudo apt rdepends package
sudo apt purge package
sudo apt install package
systemctl --user status whatever.service
systemctl --user restart whatever.service
A "ação", a coisa que você está realmente fazendo, está enterrada no meio do comando. Depois de quase duas décadas disso, ainda preciso de quatro passos para ir de um comando para o outro:
- ↑para mostrar o comando anterior
- Ctrl+ ←até que o quilate esteja no lugar certo
- Alt+ Backspacepara remover uma palavra
- Digite a nova "ação" e Return.
O que estou pedindo pode parecer preguiçoso, mas eu realmente me deparei com isso algumas vezes esta manhã em comandos muito mais longos, onde levou alguns bons segundos para caçar a linha para substituir a ação. O que eu quero saber é: isso é realmente o melhor que pode ser?
Fico sempre surpreso com o quanto não sei, então não ficaria tão chocado em saber que existe um atalho para substituição rápida de palavras em linha do qual nunca ouvi falar antes.
No bash, você pode usar a substituição rápida com
^...^...
:O trailing
^
pode ser omitido. Exemplo:Então: