Улучшение поиска в истории командной строки с помощью этих изменений.inputrc
Если вы активно пользуетесь командной строкой, вы, вероятно, хорошо знаете, что клавиши со стрелками можно использовать для пролистывания ранее выполненных команд, а клавиша табуляции может их завершить. Но обе эти функции можно значительно улучшить для поиска в истории прошлых команд, добавив несколько модификаций в ваш файл .inputrc. Первые две строки позволяют вам использовать клавиши со стрелками для пролистывания истории команд либо для конкретной команды, либо даже для начала конкретной команды.Например, если вы помните команду, начинающуюся с «с», но не знаете, что еще, вы можете просто ввести «с», а затем нажать стрелку вверх, чтобы начать поиск в истории команд всего, что начинается с буквы «с». Это также работает для поиска по полным командам, поэтому вы можете искать всю историю команды «curl», набрав curl, а затем следуя за ней с помощью стрелки вверх или вниз. Вторая партия из трех строк используется совместно с предыдущим советом и значительно улучшает возможности завершения табуляции в терминале, тем самым добавляя автодополнение табуляции в историю, удаляя чувствительность к регистру при завершении и возможность видеть все, если попытка полностью неоднозначна. В совокупности ваши поиски в истории и заполнение вкладок будут значительно улучшены.
Запустите терминал и откройте файл .inputrc в предпочитаемом текстовом редакторе. Мы будем использовать nano, потому что он очень удобен для пользователя:
nano .inputrc
Вставьте следующие пять строк в (предположительно пустой) файл .inputrc:
"\e[A: история-поиск-назад \e[B: история-поиск-вперед набор показать-все-если-неоднозначно при наборе завершение-игнорировать- case на TAB: меню завершено"
Это должно выглядеть так:
Нажмите «Control+O», чтобы сохранить файл, затем Control+X, чтобы выйти из nano.
Обновите терминал или создайте новый, и вы сможете сразу увидеть разницу при использовании стрелок и клавиш табуляции при пролистывании истории команд.
Продолжительность хранимой истории по-прежнему зависит от того, какое значение HISTFILESIZE установлено, поэтому не забудьте настроить его в соответствии с вашими потребностями. Также обратите внимание, что если вы очищаете историю команд с какой-либо регулярностью, полезность этих функций значительно снизится.
Мы уже обсуждали другие способы печати и поиска в истории прошлых команд, но это, пожалуй, лучший вариант, если вы хотите снова выполнить прошлую команду, а не просто найти синтаксис длинного - исполняемая строка.Если ваше основное взаимодействие с терминалом связано с командами по умолчанию, не забывайте об отличном трюке, позволяющем автоматически отслеживать их, сохраняя любую строку «по умолчанию» в отдельном текстовом файле, хотя эти настройки inputrc все равно облегчат вашу работу, если вы: хотите изменить настройку в будущем.
Обратитесь к Lifehacker, чтобы узнать об уловках поиска истории с помощью клавиш со стрелками, хотя вы можете вспомнить другие строки .inputrc из предыдущего трюка, которым мы поделились некоторое время назад.