12345678910111213141516171819202122232425262728293031323334353637 |
- #!/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"
|