`
kabike
  • 浏览: 608679 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

linux下利用PROMPT_COMMAND环境变量记录用户操作历史

阅读更多
在bash里设置环境变量PROMPT_COMMAND,这个命令会在用户提示符之前被执行,可以用来记录用户操作历史
引用
PROMPT_COMMAND
              If set, the value is executed as a command prior to issuing each primary prompt.


为了防止用户覆盖PROMPT_COMMAND,可以设置这个环境变量为readonly
比如在/etc/profile中追加

readonly PROMPT_COMMAND='{ date "+%y-%m-%d %T ##### $(who am i |awk "{print \$1\" \"\$2\" \"\$5}") #### $(pwd) #### $(history 1 | { read x cmd; echo "$cmd"; })"; } >> $HISTORY_FILE'
分享到:
评论

相关推荐

    linux-采用纯bash写的一个简单而快速gitprompt

    在Linux环境中,Git Prompt是一个非常实用的工具,它可以在命令行界面中实时显示Git仓库的状态,比如当前分支、是否干净(有无未提交的改动)等信息,从而提高开发效率。这个“linux-采用纯bash写的一个简单而快速...

    Linux操作系统用户操作审计初探.pdf

    然而,为了确保记录的完整性和安全性,我们可以配置shell环境变量,如`PROMPT_COMMAND`和`HISTTIMEFORMAT`。`HISTTIMEFORMAT`可以设定历史记录的时间格式,而`PROMPT_COMMAND`则可以在每次提示符显示前执行,用于...

    构建linux审计系统

    3. **客户端配置**:在每个需要审计的Linux服务器上,安装最新版本的bash,并配置环境变量`PROMPT_COMMAND`以记录每一条命令的执行情况。例如: ```bash export PROMPT_COMMAND='history 1' ``` 这条命令会在...

    Linux-101-Hacks.pdf

    第五章探讨了PS1、PS2、PS3、PS4和PROMPT_COMMAND环境变量的使用方法,这些变量用于定制shell提示符。读者可以学习如何更改默认交互式提示符(PS1)、续行提示符(PS2)、select语句在脚本中使用的提示符(PS3)、...

    shell如何记录用户的IP与命令详解

    如果希望将用户执行的每一个命令都记录到特定的日志文件中,可以利用`PROMPT_COMMAND`环境变量。这个变量会在每个命令提示符显示之前被执行。通过设置`PROMPT_COMMAND`,我们可以让每个命令的执行记录被写入日志,...

    操作系统安全:history历史命名完整性配置.docx

    操作系统安全在Linux环境中至关重要,其中一项基础但关键的设置是管理命令历史记录,这涉及到`history`命令的配置。`history`命令允许用户查看过去执行过的命令,这对于追踪操作历史、排查问题或学习命令用法非常...

    Linux_101_Hacks_CN

    **技巧33:PROMPT_COMMAND环境变量** - **知识点**: `PROMPT_COMMAND` 变量允许在每次更新提示符之前执行自定义命令。 - **应用场景**: 实现动态提示符或执行定期任务。 - **示例**: 在每次更新提示符前打印当前时间...

    history保存用户操作日志,登陆时间,防止会话退出时覆盖

    在Linux系统中,`history`命令是一个非常有用的工具,它能够记录用户的终端操作历史,方便用户回顾和查找之前执行过的命令。为了确保这些操作日志不被覆盖,并且能够保存用户的登陆时间,我们可以进行一系列的配置。...

    Linux 基本设置技巧:如何在console顶部显示当前时间

    此外,如果你的Linux发行版使用的是其他shell(如zsh),则需要相应地调整配置文件(如`~/.zshrc`)以及对`PROMPT_COMMAND`的理解,因为不同shell的环境变量可能会有所不同。 总的来说,通过巧妙地利用`PROMPT_...

    Linux_101_Hacks统稿by朱涛(经典英文版朋友翻译的)

    #### 技巧33:PROMPT_COMMAND环境变量 - **解释**:`PROMPT_COMMAND`环境变量允许在每次更新提示符之前执行一个命令。 - **示例**:`PROMPT_COMMAND='echo "Updating prompt..."'`在每次更新提示符之前输出消息。 ...

    Linux系统常用的2种切换用户命令

    - `-m`, `-p`或`--preserve-environment`:保持当前用户的环境变量不变。 - `-c command`或`--command=command`:切换用户后执行指定命令,然后返回原始用户。 - `-s shell`或`--shell=shell`:指定要使用的shell,...

    Linux-101-Hacks

    该书通过一系列具体示例介绍了如何高效地利用Linux进行日常操作及高级任务管理。 #### About the Author 本书作者是一位在Linux领域有着丰富经验的技术专家,拥有多年实践经验,并对Linux操作系统有着深入的理解。 ...

    Windows经典命令行Linux命令行

    在环境变量和配置方面,Linux使用`.bashrc`和`.bash_profile`文件进行用户级别的配置,而Windows CMD的环境变量设置通常通过系统的“环境变量”设置。 虽然CMD和Bash shell在语法和功能上有显著差异,但它们都体现...

    Linux101 Hacks 2rd

    在Linux中,`CDPATH`环境变量可以定义多个目录作为`cd`命令的搜索路径。当输入一个不存在于当前目录的目录名时,`cd`命令会依次在`CDPATH`中列出的目录下查找该目录。 **Hack 2. Use CD Alias to Navigate Up the ...

    linux脚本基本命令

    * SHELL变量:环境变量存储了用户缺省的shell 命令替换: 1. 命令替换是一种在单个命令行中使用多个命令的方法,例如echo “the data is `date`” 2. expr命令:用于求之算术表达式,该命令的输出被送到标准输出...

    Linux经典实用的使用技巧33则

    可以通过修改`~/.bashrc`或`/etc/bashrc`文件中的`PROMPT_COMMAND`变量来定制终端提示符,例如: ```bash export PROMPT_COMMAND='echo -ne "\[\e[2;999r\]\[\e[1;1H\]\[\e[00;44m\]\[\e[K\]"$(date)"\[\e[00m\]\[\e...

    java环境配置及验证方法

    在 UNIX、SOLARIS、LINUX 操作系统中,可以通过以下步骤设置环境变量: 1. 打开 Shell 或 Terminal 窗口 2. 输入 setenv PATH /usr/jdk1.6.0_22/bin:$PATH 并回车 3. 重新启动 Shell 或 Terminal 窗口 三、测试...

Global site tag (gtag.js) - Google Analytics