修改/etc/profile文件,增加如下內(nèi)容,可以記錄每個用戶執(zhí)行指令到臨時文件夾。
#變更bash的環(huán)境變量,記錄登錄用戶的操作命令。
export HISTORY_FILE=/tmp/history_$USER
USERNAME=$(who am i | awk -F ' ' '{print $1 $5}')
# 確保 HISTORY_FILE 存在且可寫
if [ ! -f "$HISTORY_FILE" ]; then
touch "$HISTORY_FILE"
chmod 600 "$HISTORY_FILE"
fi
# 安全地獲取最近一條命令
get_last_command() {
local last_cmd=$(history 1)
if [[ -n "$last_cmd" ]]; then
echo "$last_cmd" | cut -d' ' -f2-
else
echo "No command found"
fi
}
export PROMPT_COMMAND='{
last_cmd=$(get_last_command)
if [[ -n "$last_cmd" ]]; then
echo "$(date "+%Y-%m-%d %H:%M:%S [$USERNAME] ### $last_cmd")" >> "$HISTORY_FILE"
fi
}'
效果:

1734056620836.png