По умолчанию, нет места , где все команды записываются и хранятся на неопределенный срок, хотя ~/.bash_historyсодержит последние несколько команд (если вы используете bash, который является оболочкой по умолчанию в Ubuntu).
Если вы хотите каждую команду набранной bashзаписаны навсегда , вы должны установить его самостоятельно. Например, вы можете поместить следующее в вашем ~/.bashrcфайле регистрировать все команды , набранные в bashскорлупе к файлу ~/.command_log:
# log every command typed and when
if [ -n "${BASH_VERSION}" ]; then
trap "caller >/dev/null || \
printf '%s\\n' \"\$(date '+%Y-%m-%dT%H:%M:%S%z')\
\$(tty) \${BASH_COMMAND}\" 2>/dev/null >>~/.command_log" DEBUG
fi
Вышеприведенные устанавливает ловушку на DEBUG, которая выполняется непосредственно перед обычным выполняется команда. callerВстроенный используются для проверки команды набираясь в интерактивной оболочке или запустить через что - то подобное ~/.bashrc. Значение ${BASH_COMMAND}содержит команду в настоящее время выполняется.