Как отслеживать время выполнения команд в истории Bash

По умолчанию оболочка Bash сохраняет историю введенных пользователем команд в файле ~/.bash_history. Однако стандартный вывод команды history не отображает временные метки, что затрудняет аудит действий в системе. Решить эту задачу помогает настройка переменной окружения HISTTIMEFORMAT.

Отображение времени для текущего сеанса

Если вам нужно оперативно просмотреть время выполнения команд без внесения изменений в настройки профиля, выполните следующую команду в текущем терминале:

export HISTTIMEFORMAT='%F %T '

Эта переменная использует параметры форматирования, аналогичные команде date:

  • %F — текущая дата в формате «год-месяц-число».
  • %T — текущее время в формате «часы:минуты:секунды».

Более подробную информацию о доступных параметрах можно найти в справочном руководстве, выполнив man date. После установки переменной вы можете повторно вызвать history, и вывод будет содержать временные отметки.

Постоянная настройка отображения времени

Чтобы временные метки отображались в истории команд после каждого входа в систему, необходимо сделать изменения перманентными. Для этого добавьте переменную в файл конфигурации ~/.bashrc:

vi ~/.bashrc

Добавьте следующую строку в любое удобное место файла:

export HISTTIMEFORMAT='%F %T '

Сохраните изменения и закройте редактор. Чтобы применить настройки без перезапуска терминала, выполните команду:

source ~/.bashrc

Теперь Bash будет автоматически фиксировать время выполнения для всех будущих команд. Если вы хотите узнать больше о работе с командной оболочкой, рекомендуем ознакомиться с основами работы в bash.