Как я могу помешать меньше хранить историю?
Каждый раз, когда я ищу термин в less
, он хранит мой поиск в файле .lesshst
, Как я могу остановить это поведение?
3 ответа
Откройте терминал и создайте файл .lesskey
, в вашей домашней папке и добавьте к нему следующее:
#env
LESSHISTSIZE=0
Если у вас уже есть файл .lesshst
в вашей домашней папке, затем удалите его и введите команду
lesskey
Вы должны получить любые ошибки здесь. Это не будет хранить историю less
с этого момента, пока вы не измените .lesskey
файл.
Со страницы руководства меньше:
ПЕРЕМЕННЫЕ ОКРУЖАЮЩЕЙ СРЕДЫ
Environment variables may be specified either in the system environment as usual, or in a lesskey (1) file. If environment variables are defined in more than one place, variables defined in a local lesskey file take precedence over variables defined in the system environment, which take precedence over variables defined in the system-wide lesskey file.
LESSHISTSIZE
The maximum number of commands to save in the history file. The default is 100.
РЕДАКТИРОВАТЬ:
Из комментариев я обнаружил, что лучший способ предотвратить создание файла истории за меньшие деньги.
в .lesskey
файл в домашней папке, добавьте это:
LESSHISTFILE=-
или же
LESSHISTFILE=/dev/null
Если вы положите это в свой ~/.bashrc
файл, это будет работать, но будет иметь более низкий приоритет, если у вас есть другие значения в вашем .lesskey
файл для тех же переменных.
Вы можете взглянуть на это:
Добавьте это в свой
~/.bashrc
:
export LESSHISTFILE=-
Для проверки теперь вы можете запустить новую оболочку, удалить файл, а затем начать использовать . Он не должен создавать новый
~/.lesshist
файл снова.
Обратите внимание, что
export
является важным. Если вы оставите это,
LESSHISTFILE
переменная, кажется, установлена (
echo $LESSHISTFILE
будет выводить
-
), но он не будет передан
less
.
Это в основном трюк Bash, включающий LESSHISTFILE
переопределить с помощью командного префикса
history | LESSHISTFILE=/dev/null less
Что это делает, это труба на выходе history
командовать в less
при использовании префикса команды для манипулирования средой, подверженной воздействию less
команда.
Среду для любой простой команды или функции можно временно дополнить, добавив к ней префиксы с помощью параметров, как описано в разделе Параметры оболочки. Эти операторы присваивания влияют только на среду, видимую этой командой.
Подробнее об этом конкретном использовании на https://stackoverflow.com/a/52208927/117471