#!/bin/bash # 监控用户命令 cat >> ~/.zshrc << 'EOZ' # ============= 监控用户命令 ============= preexec() { # Get current date and time timestamp=$(date "+%Y-%m-%d %H:%M:%S") # Get current user user=$(whoami) # Get current directory cwd=$(pwd) # Print command execution info echo "$timestamp - $user - $cwd - START: $1" >> /tmp/users-command.log } # 记录命令执行后 precmd() { # 获取命令返回值 exit_code=$? # 获取上一条命令 last_command=$(fc -ln -1) # 获取当前日期和时间 timestamp=$(date "+%Y-%m-%d %H:%M:%S") # 获取当前用户 user=$(whoami) # 获取当前目录 cwd=$(pwd) # 打印命令执行后的信息 echo "$timestamp - $user - $cwd - END: $last_command [exit code: $exit_code]" >> /tmp/users-command.log } # ============= 监控用户命令 ============= EOZ echo "安装完成: source ~/.zshrc ,请查看:/tmp/users-command.log"