1

В bash стрелка вверх напоминает предыдущую команду. Нажмите на нее двадцать раз, я получаю команду из двадцати мест в истории, которую я запускал пять минут назад. Предположим, я запускаю эту команду прямо сейчас. Теперь, когда я нажимаю стрелку вверх, я вспоминаю самую последнюю команду - ту, которую я только что повторно выполнил, и дополнительные нажатия возвращают меня назад в историю, как и раньше.

Возможно, пять минут назад, я выполнил четыре команды в серии, которые я хочу запустить снова. Я должен нажать стрелку вверх двадцать раз снова, и снова, и снова.

В Microsoft Windows, в их командной оболочке, я могу вспомнить команду некоторое время назад, перезапустить ее, а затем, когда я нажимаю стрелку вверх, я получаю команду до этого, пять минут назад. Я могу получить команды, следующие за пять минут назад, с меньшими усилиями и меньшим износом клавиш со стрелками.

Таким образом, bash (и я полагаю, что большинство оболочек unix/linux) всегда начинает вызов своей истории из самой последней команды, в то время как Windows запомнит место давно уже введенной команды и вспомнит относительно нее.

Можно ли вспомнить историю в bash так, как это делает Windows?

1 ответ1

1

Не знаю, реализовано ли это поведение в bash, но вы можете использовать обратный поиск с ^R или history; !<number> . Эти две команды сэкономили мне много времени.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .