zoukankan      html  css  js  c++  java
  • history命令

    history命令

    1. history的基础

    1.相关文件

      ~/.bash_history   该文件存储已执行的命令
      /etc/profile   该文件存储一些变量,本文中用来配置history,使history更易读
    文件位置 作用

    2.history的理论常识

    1. history的命令是实时的,即刚执行的命令,使用history就能查到

    2. bash_history文件中存放的命令不是实时的,需要退出当前终端,或者执行 history -w命令

    3. 同用户多终端执行命令,history命令只显示当前终端执行过的命令

    4. 同用户多终端执行命令,最先关闭的终端最先将命令写入bash_history文件中,和命令执行先后顺序无关

    2. history的应用及场景

    1. history 命令参数

    参数 解释
    -a   命令将新增命令写入historyfile
    -w   将目前history写入到historyfile
    -r   将historyfile内容读入shell history记忆中
    -c   将目前shell history中命令消除(暂时,退出终端后恢复)
    [number]   例:history 12 ; 执行历史命令中的第12条命令
    ![number]   例:!12 ;执行历史命令中的第12条命令

    疑问:

    1. 先执行 history -c 然后执行 history -w 有什么效果?

    2. 先执行 history -c 然后执行 history -r 有什么效果?

    3. 已知 history -c 参数只能暂时清除命令,那么如何永久清除history?

    2. 应用前的环境配置

    先配置一下环境能让学习变得更加畅快

    1. 记录history执行时间,history 默认不记录时间,记录时间方便学习,也方便自查

    vim /etc/profile ,在文件尾部添加

    export HISTTIMEFORMAT="%y-%m-%d %H:%M:%S "

    export HISTTIMEFORMAT="%F %T " # 两个效果是一样的

    添加完成后,source /etc/profile 使改动生效。
    (后引号前要加空格,不加空格会挤成一团,改动后,source一下/etc/profile文件)

    2. 改动 history 能存储的命令数量

    编辑 /etc/profile 文件

    vim /etc/profile

    行尾加入
    HISTSIZE=1000 # 一天一千行,来年秃头亮

    保存退出后,执行
    source /etc/profile

    3. 应用

    1. 查看刚才做了哪些操作

    history

    2. 查看最后20行命令

    history | tail -n 20

    3. 查看开始20行命令

    history | head -n 20

    4. 查看删除文件(rm)命令

    histroy | grep rm

    5. 清空执行命令的历史

    history -c;history -w

    6. 执行命令历史中,第20条命令

    history 20 或者 !20

    3. history的补充

    来个奇技淫巧  ----  删除特定命令不留下痕迹

    1. vim随便打开一个文件(建议是常用文件)
    2. 设置vim 不记录命令 :set history=0
    3. 用vim的分屏功能:vsp ~/.bash_history
    4. 恢复 :set history=20
    遗憾的是,会留下 vim编辑常用文件的历史

  • 相关阅读:
    pycharm路径
    git常用命令
    分页
    router
    视图集
    Leanring TypeScript 中文版
    RXJS 系列 04
    RXJS 系列 03
    RXJS 系列 02
    RXJS 系列 01
  • 原文地址:https://www.cnblogs.com/deblr/p/11484875.html
Copyright © 2011-2022 走看看