![Получение метки времени UNIX при регистрации истории](https://rvso.com/image/776337/%D0%9F%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%BC%D0%B5%D1%82%D0%BA%D0%B8%20%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%B8%20UNIX%20%D0%BF%D1%80%D0%B8%20%D1%80%D0%B5%D0%B3%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%86%D0%B8%D0%B8%20%D0%B8%D1%81%D1%82%D0%BE%D1%80%D0%B8%D0%B8.png)
Я запускаю ниже скрипт bash, который сохраняет историю в файле, однако он регистрирует историю с временной меткой эпохи Unix. Мне нужна временная метка в удобном для чтения человеком формате.
_who_am_i=$(who am i|awk '{print $1}')
_ID=$(id -u $_who_am_i)
if [ "$_ID" > 0 ]
then
export HISTSIZE=10000
export HISTTIMEFORMAT="%F %T "
export HISTFILE=/var/log/users_historylogs/history-users-$(who am i | awk '{print $1}';exit)-$(date +%F)
export PROMPT_COMMAND='history -a'
fi
решение1
Как указано вТочное руководство, HISTTIMEFORMAT
переменная применяется к выходу команды history
. Файл истории всегда содержит временные метки Unix. Это необходимо для того, чтобы bash
сам мог его проанализировать.