Как связать клавишу со стрелкой вверх, чтобы перейти к следующей уникальной команде (терминал MacOS)? - PullRequest
2 голосов
/ 08 апреля 2019

Таким образом, я заинтересован в связывании клавиши со стрелкой вверх, чтобы перейти к следующей уникальной команде в истории, в отличие от непосредственно предыдущей?

Например: Я учусь в колледже, кодирую в java, и при отладке мне нужно несколько раз скомпилировать и перекомпилировать java-файлы в терминале, прежде чем я запустил этот файл, и поэтому моя история командной строки может выглядеть примерно так:

1: javac Hello_World.java
2: java Hello_World
3: javac Hello_World.java
4: javac Hello_World.java
5: javac Hello_World.java
6: javac Hello_World.java

и мне нужно несколько раз нажать клавишу со стрелкой вверх (в этом примере 4 раза), чтобы вернуться к команде, в которой я ее только что запустил.

Так есть ли способ вернуться к следующей уникальной команде , чтобы мне нужно было нажимать стрелку вверх только один раз, чтобы пропустить повторяющиеся команды?

1 Ответ

0 голосов
/ 08 апреля 2019

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

Вы можете добавить это в свой ~/.bash_profile для автоматического удаления команд дублирования:

# clean up history:
export HISTCONTROL=erasedups:ignoreboth

теперь вам нужно всего лишь дважды нажать , чтобы добраться до последнегоуникальная команда.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...