No bash, não acho que você possa combinar o atalho ^ com qualquer modificador. Isso deixa a forma longa:
!!:gs/a/b/
Em zsh, o modificador G é um caso especial, você pode usá-lo com ^ :
^a^b^:G
No bash, se eu executar este comando:
echo aaaaaaa
Eu recebo aaaaaaa (duh)
Mas, se eu digitar
^a^b
Acabo com baaaaaa
O que eu digitaria para terminar com bbbbbbb ?
^search^replacement é açúcar sintático para !:s/search/replacement/ , o que é explicado em esta resposta . A versão que substitui todas as instâncias é !:gs/search/replacement/ ; Eu acho que é a forma mais curta que existe
Tags bash zsh command-history