По умолчанию bash загружает строки из ~/.bash_history
истории. Можно ли добавить пользовательский файл для загрузки? Я хочу внедрить файл, содержащий команды, которые я часто использую, и получить к ним доступ через встроенный поиск.
9
/usr/local/bin
или что-то в этом роде.bashrc
?Ответы:
Я сохраняю это простым с
alias h='history|grep'
загруженным в мой профиль Bash.Итак, мой рабочий процесс
h command
, например:h hpssa
Если я хочу запустить "
hpssa -stop
", я бы просто набрал!226
Это всего лишь мой подход, но, возможно, вы могли бы изменить то, как вы вспоминаете элементы истории. Я не думаю, что имеет смысл вводить данные в файл истории.
источник
docker run ...
Раньше я очень полагался на
Ctrl-R
(reverse-search-history
команду Readline), которая просматривает историю в обратном направлении, чтобы извлечь ранее введенные длинные команды, но теперь я предпочитаю использовать псевдонимы и сценарии / функции оболочки. В любом случае,history
встроенная команда Bash может использоваться для загрузки списка пользовательских команд в вашу текущую историю.Со страницы руководства bash:
Автоматизация запуска
Я просто попытался запустить эту команду автоматически, добавив ее в качестве последней строки в моем
.bashrc
. Однако команды из моего пользовательского файла истории были недоступны, когда я запустил новую оболочку. Похоже, что история оболочки загружается только из.bash_history
файла по умолчанию : после того, как файлы запуска были обработаны и непосредственно перед представлением приглашения для интерактивной оболочки. К сожалению, кажется, нет простого способа автоматизировать это.источник
Как заметил @AnthonyGeoghegan, история загружается после обработки файлов запуска. Это предлагает другой способ предварительно загрузить нужную историю в файле запуска:
Обратите внимание, что этот подход может привести к тому, что со временем в вашу .bash_history будет добавлено несколько копий ваших специальных команд. Вы можете заключить свои специальные команды в строки комментариев, чтобы вы могли легко найти и удалить их (например, через sed) как часть заполнения файла .bash_history. Что-то вроде:
источник