zoukankan      html  css  js  c++  java
  • Linux history 历史命令位置修改

      系统自带的历史命令显示只有命令,看不到时间和用户,添加下面代码增强历史命令并修改历史命令文件存放的位置

    1.在文件最下面添加以下代码 ,这个是修改历史命令存放的位置并显示时间和用户

    ~]# vim  /etc/profile  

    HISTDIR=/usr/share/.history
    DT=`date +%Y%m%d_%H%M%S`
    if [ ! -d $HISTDIR ];then
        mkdir -p $HISTDIR
        chmod 777 $HISTDIR
    fi
    if [ ! -d $HISTDIR/${LOGNAME} ];then
        mkdir -p $HISTDIR/${LOGNAME}
        chmod 300 $HISTDIR/${LOGNAME}
    fi
    export HISTFILE="$HISTDIR/${LOGNAME}/${USER_IP}.history.$DT"
    
    export HISTTIMEFORMAT="[%Y-%m-%d %H:%M:%S] [`who am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`] [$(whoami)] "
    #记录shell执行的每一条命令   
    export PROMPT_COMMAND='
    if [ -z "$OLD_PWD" ];then
      export OLD_PWD=$PWD;
    fi
    if [ ! -z "$LAST_CMD" ] && [ "$(history 1)" != "$LAST_CMD" ];then
      logger -t `whoami`_shell_cmd "[$OLD_PWD]$(history 1)"
    fi
    export LAST_CMD="$(history 1)"
    export OLD_PWD=$PWD;'
    View Code

    2.这个只是增加了历史命令的时间

    ~]# vim /etc/profile

    ## 设置history格式
    export HISTTIMEFORMAT="[%Y-%m-%d %H:%M:%S] [`who am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`] "
    ## 实时记录用户在shell中执行的每一条命令
    export PROMPT_COMMAND='
    if [ -z "$OLD_PWD" ];then
        export OLD_PWD=$PWD;
        fi;
        if [ ! -z "$LAST_CMD" ] && [ "$(history 1)" != "$LAST_CMD" ]; then
            logger -t `whoami`_shell_cmd "[$OLD_PWD]$(history 1)";
            fi ;
            export LAST_CMD="$(history 1)";
            export OLD_PWD=$PWD;'
    View Code

    注:2选1 写入到profile环境变量文件中

  • 相关阅读:
    用grunt搭建自动化的web前端开发环境-完整教程
    redis 使用
    ubuntu系统安装redis
    redis resque消息队列
    linux下常用的命令
    介绍Mina的TCP的主要接口(一)
    Mina框架详解——简单的TCPClient
    Mina框架详解——简单的TCPServer
    Mina框架知识解析
    RabbitMQ新手入门Helloworld
  • 原文地址:https://www.cnblogs.com/chaolinux/p/8664027.html
Copyright © 2011-2022 走看看