保存linux执行过的命令时间

不及物动词 其他 62

回复

共3条回复 我来回复
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    要保存Linux执行过的命令时间,有以下几种方法:

    1. 使用命令历史记录功能:Linux系统中的大部分shell都支持命令历史记录功能。每次执行完命令后,会将命令和执行时间自动保存到历史记录文件中。可以通过配置特定的环境变量来设置历史记录文件保存的路径和大小。比如在bash shell中,可以通过在~/.bashrc文件中添加以下配置来保存命令执行时间:

    “`shell
    export HISTTIMEFORMAT=”%Y-%m-%d %H:%M:%S”
    export HISTSIZE=10000
    export HISTFILESIZE=20000
    “`
    上述配置中,`HISTTIMEFORMAT`设置了命令执行时间的格式,`HISTSIZE`和`HISTFILESIZE`分别设置了保存在内存中的历史记录条数和保存在历史记录文件中的历史记录条数。

    配置好后,重新加载配置文件或者重新打开终端窗口,就可以开始保存命令执行时间了。可以通过使用`history`命令查看历史记录。

    2. 使用auditd工具:auditd是一个Linux系统的审计工具,可以用来监视系统上发生的各种事件,包括命令执行。通过配置auditd,可以实现对命令执行时间的保存。

    首先,需要确保系统上已安装auditd工具。然后,在auditd配置文件`/etc/audit/auditd.conf`中添加以下配置:

    “`shell
    ## 命令执行事件的规则
    -w /bin/ -p x -k command_execution
    -w /usr/bin/ -p x -k command_execution

    ## 保存所有事件到审计日志文件中
    -a always,exit -F arch=b64 -S execve -k all_events
    -a always,exit -F arch=b32 -S execve -k all_events
    “`
    上述配置是一个简单的示例,仅监视了`/bin/`和`/usr/bin/`目录下的命令执行事件,并将这些事件保存到名为”command_execution”的审计日志文件中。

    配置完成后,需要重新启动auditd服务以使其生效。命令执行的时间信息将会保存在指定的审计日志文件中。

    3. 使用syslog工具:syslog是Linux系统默认的日志管理工具,可以用来记录系统的各种信息,包括命令执行。通过配置syslog,可以将命令执行的时间信息保存到特定的日志文件中。

    首先,需要编辑syslog配置文件`/etc/rsyslog.conf`,添加以下配置:

    “`shell
    ## 将命令执行信息保存到指定日志文件中
    :msg, contains, “COMMAND” /var/log/command_exec.log
    “`
    上述配置中,`/var/log/command_exec.log`是保存命令执行信息的日志文件路径。该配置将会把包含”COMMAND”关键字的日志信息保存到这个文件中。

    配置完成后,重新启动rsyslog服务以使其生效。命令执行的时间信息将会被保存到command_exec.log日志文件中。

    通过以上几种方法,可以方便地保存Linux执行过的命令时间,可根据具体需求选择适合自己的方式。

    2年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在Linux系统中,可以通过以下几种方法来保存执行过的命令时间:

    1. 历史命令记录:Linux系统自带有一个命令历史记录功能。当用户在终端中执行命令时,系统会自动将命令保存到一个隐藏文件中。可以通过修改用户的bash配置文件(一般是~/.bashrc或~/.bash_profile)来指定历史命令保存的位置和保存的数量限制。默认情况下,可以使用history命令来查看最近执行的命令历史记录。

    2. 使用syslog:syslog是一个系统事件记录守护进程,用于保存系统消息和事件的日志。可以使用syslog来记录用户执行的命令,并将其保存到指定的日志文件中。通过配置syslog的规则,可以将命令输出到单独的日志文件,以便于后续检索和分析。

    3. 使用auditd:auditd是Linux系统中的一个审计守护进程,可以用于记录系统的各种事件。通过配置auditd规则,可以指定记录用户执行命令的事件,并将其保存到日志文件中。auditd的配置文件位于/etc/audit/auditd.conf,在该配置文件中可以指定需要审计的事件类型和保存日志的位置。

    4. 使用shell脚本:用户可以编写一个shell脚本,在其中通过调用Linux系统的时间函数来记录用户执行命令的时间。脚本可以将时间信息写入一个日志文件中,以便于后续查阅。该方法需要用户主动调用脚本来执行命令,相对来说比较繁琐。

    5. 使用第三方工具:除了以上方法外,还有一些第三方工具可以用来记录命令执行时间,例如history文件分析工具(如HSTR)和命令行日志工具(如RecordCMD)。这些工具可以方便地记录和查看历史命令的执行时间,并提供了更多的功能和定制选项。

    总结:在Linux系统中,可以通过历史命令记录、syslog、auditd、shell脚本和第三方工具等多种方法来保存执行过的命令时间。每种方法都有其优缺点,根据实际需求选择适合自己的方法来记录和查看命令执行时间。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在Linux中,可以通过使用历史命令功能来保存执行过的命令以及对应的执行时间。通过配置合适的环境变量和选项,可以实现保存命令执行时间的功能。

    下面是一种常用的方法来保存Linux执行过的命令时间的流程:

    1. 配置保存命令历史的环境变量:在用户的bash配置文件(通常是~/.bashrc或~/.bash_profile)中添加如下内容:

    “`shell
    export HISTTIMEFORMAT=”%Y-%m-%d %T ”
    “`

    这个环境变量指定了命令历史记录中显示的时间格式。

    2. 重载bash配置文件:执行以下命令使配置文件生效:

    “`shell
    source ~/.bashrc
    “`

    3. 查看命令历史记录:现在,当你执行命令时,命令历史记录将包含该命令的执行时间。要查看命令历史记录,可以使用`history`命令:

    “`shell
    history
    “`

    这将显示所有的历史命令以及其对应的执行时间。

    4. 保存命令历史记录到文件:如果你希望将命令历史记录保存到文件中,可以使用以下命令:

    “`shell
    history > history.txt
    “`

    这将把历史命令记录保存到名为`history.txt`的文件中。

    5. 使用`history`命令来搜索命令历史记录:`history`命令可以用来搜索命令历史记录。以下是一些常用的搜索命令历史记录的方法:

    – 搜索包含特定关键字的命令:

    “`shell
    history | grep keyword
    “`

    – 搜索最近执行的命令:

    “`shell
    history -n | tail -n number
    “`

    其中,`number`是你想要显示的最近执行的命令的数量。

    以上就是保存Linux执行过的命令时间的方法和操作流程。通过配置命令历史记录的环境变量和选项,可以方便地查看和搜索命令历史记录,并且可以将其保存到文件中以备后续使用。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部