Как я могу помешать меньше хранить историю?

14

Каждый раз, когда я ищу термин в less, он сохраняет мой поиск в файле .lesshst. Как я могу остановить это поведение?

fouric
источник

Ответы:

19

Откройте терминал и создайте файл .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файле для тех же переменных.

Вы можете посмотреть на это:

Jobin
источник
2
@InkBlend Вы использовали экспорт? У меня меньше среднего в моем .bashrc с помощью: "export LESSHISTFILE = / dev / null"
Дэвид Пул
1
Возможно, @Jobin может добавить экспорт .bashrc + к своему ответу. Я думаю, что он заслуживает похвалы за хороший ответ.
Дэвид Пул
0

Это в основном трюк bash, включающий LESSHISTFILEпереопределение через манипулирование средой префикса команды.

history | LESSHISTFILE=/dev/null less

То, что это делает, это передает выходные данные historyкоманды lessпри использовании префикса команды, чтобы управлять средой, выставленной lessкоманде.

Это описано в ссылке на bash :

Среду для любой простой команды или функции можно временно дополнить, добавив к ней префиксы с помощью параметров, как описано в разделе Параметры оболочки. Эти операторы присваивания влияют только на среду, видимую этой командой.

Подробнее об этом конкретном использовании на /programming//a/52208927/117471

Бруно Броноски
источник