Почти во всех современных средах командной строки, которые я использовал, вы можете нажать стрелку вверх, чтобы вернуться к нескольким командам в вашей истории и повторно запустить более раннюю команду. Но в некоторых средах командной строки, которые я использовал, в следующей командной строке после этого вы также можете нажать стрелку вниз, чтобы просмотреть историю с того места, где предыдущая команда появилась в истории.
Например, предположим, что вы делаете это:
$ vi mysource.c
$ make
$ make test
Затем предположим, что ваш тест не пройден , и вы хотите повторить эти шаги снова, поэтому вы нажимаете стрелку вверх 3 раза, чтобы вернуться к vi mysource.c
, и нажимаете return, чтобы запустить его. Затем, при следующем запросе, я хочу иметь возможность нажать стрелку вниз один раз, чтобы make
. И в следующем приглашении я хочу нажать один раз стрелку вниз, чтобы make test
.
Я не знаю, сводится ли это к настройкам bash
по умолчанию в Mac OS X или к настройкам Terminal.app по умолчанию, или к чему, но это «нажмите стрелку вниз при появлении нового запроса, чтобы просмотреть историю с того места, где вы ее использовали в прошлый раз "функциональность не включена по умолчанию.
Я просмотрел справочную страницу bash(1)
и нашел:
forward-search-history (C-s)
... но ^S
, похоже, ничего не делал. Не уверен, что Терминал проглотил его как XOFF
старой школы или что-то в этом роде (хотя, похоже, он не приостанавливал вывод терминала).
Несколько других заметок:
- Я на Mac OS X Snow Leopard 10.6.6.
- Я уже знаю о многих других забавных способах работы с историей оболочки, это всего лишь одна конкретная вещь, которую я пытаюсь заставить работать прямо сейчас.
- Хотя любые указатели в правильном направлении были бы полезны, решения, о которых известно, что они работают на 10.6.x
bash
в Terminal.app, были бы очень полезными.