Чтобы уточнить, я ищу способ выполнить глобальный поиск и замена по предыдущей используемой команде. ^word^replacement^
только кажется заменяет первый матч.^word^replacement^во всех матчах в Bash?
Есть ли какой-то set
вариант, который ускользает от меня?
Это не работает для меня. Я получаю «twoone» – finnw
Вы уверены, что набрали его правильно? Он отлично работает для меня. (Я использую GNU bash, версия 3.2.48 (1) -release.) –
просто протестирован на старой версии bash, и (неудивительно) он не работает: '$ echo $ BASH_VERSION' _ (2.05 .8 (1) -release) _ '$ echo oneone' _ (out: oneone) _ ' $ !!: gs/one/two' _ (out: twoone) _ ... '$ echo $ BASH_VERSION' _ (out: 3.2.25 (1) -release) _ '$ echo oneone' _ (out: oneone) _ ' $ !!: gs/one/two' _ (out: twotwo) _ ... Общий совет для всех вещей bash? Используйте версию 3+ – michael