Я недавно сделал безумно долгое переключение с tcsh на bash.Единственное, чего мне не хватает, это функции tcsh ESC + p : начните вводить команду, а затем нажмите ESC + p (я действительно нашелэквивалентный ctrl- [p легче набрать), и он переходит к самой последней команде в вашей истории, которая начинается с того, что вы уже набрали.
Возможно, лучший ответ - просто привыкнуть к bash's Ctrl + r но пока мне это не очень нравится.Я часто начинаю набирать команду, а потом мне приходит в голову, что я ее уже выполнил.С помощью функции tcsh я мог бы затем сделать ESC + p + Введите , чтобы переиздать его.Это так быстро, что я бы никогда не использовал стрелку вверх для чего-то большего, чем две команды назад.
Пример, где я нашел это особенно приятным: длинные команды часто начинаются с точки, потому что ониформа
./myprogram.pl -lots -of -args -and -switches
В tcsh я бы набрал такую команду, затем, может быть, ls, less, tail, что угодно, а затем еще раз выполнил длинную команду, 4 клавиши: точка, escape, p, enter.
Как я могу сделать это в Bash?Или, чтобы конкретизировать, каково наименьшее количество нажатий клавиш в bash, чтобы сказать «повторить последнюю команду, начавшуюся с точки»?Это может соответствовать или побить tcsh's 4?