Чи є максимальний розмір файлу історії баш?


18

Чи можна збільшити розмір історії команд у bash?

Зауважте, що я тут використовую комп'ютер Red Hat Linux у відділі астрофізики студентства (тому я не отримую так багато привілеїв).


Відповіді:


16

Замість вказівки цифр можна зробити

unset HISTSIZE 
unset HISTFILESIZE
shopt -s histappend

у такому випадку обмеження має лише розмір вашого диска (і ваш "найбільший ліміт файлу", якщо у вашої ОС або FS).

Однак майте на увазі, що це врешті-решт сповільнить удар все більше і більше. див. цей документ BashFAQ та статтю про адміністрування debian (оригінальне посилання загинуло, дивіться у дзеркало: archive.is та archive.org ) щодо методів, які краще масштабуються.


Можливо, вам також доведеться збільшити history-sizeсвою inputrc.
— Кріс Даун

Попередження: Як зазначалося [ unix.stackexchange.com/a/76129/78713:11 ( нижче) , це може спричинити спадкування Bash за замовчуванням і, якщо ваш існуючий .bash_historyбільший, ніж усі, - усікати його.
— Кріс Повірк

8

Ви можете використовувати логротат для збереження старих записів. Це дозволяє, наприклад, встановити обмеження розмірів, що призведе до архівації. Зазвичай він виконується з щоденної роботи, але ви можете так само викликати його зі свого .bash_logoutсценарію.


Мені здається, що це найбільш стійкий підхід для мене, оскільки зняття обмежень розміру з часом вплине на продуктивність. Хоча я не переживаю, я незабаром досягну межі, боюсь, що знадобиться певний час, щоб почати помічати такі наслідки. Btw, розглянути можливість додавання налаштування, який ви встановили, та опціональну команду bash logout, яку потрібно додати.
— Бальміпур

Посилання не працює. Можливо, відредагуйте, щоб вказати на інше посилання з тією ж цільовою інформацією?
— Доктор Беко

7

@Philomath, не налаштовувати ці зміни на довкілля для мене взагалі не працює! Для мене це призводить до того, що bash використовує свої вбудовані параметри (здається) обрізання .bash_history до приблизно 9KiB.

Що для мене працює в моєму .bashrc:

export HISTSIZE=
export HISTFILESIZE=
shopt -s histappend
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.