history命令用于显示指定数目的指令命令,读取历史命令文件中的目录到历史命令缓冲区和将历史命令缓冲区中的目录写入命令文件。

该命令单独使用时,仅显示历史命令,在命令行中,可以使用符号!执行指定序号的历史命令。

历史命令是被保存在内存中的,当退出或者登录shell时,会自动保存或读取。在内存中,历史命令仅能够存储1000条历史命令,该数量是由环境变量HISTSIZE进行控制

history常见命令参数

-c:清空当前历史命令;
-a:将历史命令缓冲区中命令写入历史命令文件【/root/.bash_history】;
-r:将历史命令文件中的命令读入当前历史命令缓冲区;
-w:将当前历史命令缓冲区命令写入历史命令文件中【/root/.bash_history】;
n:打印最近的n条历史命令
#  history会列出bash保存的所有历史命令,并且给它们编了号,我们可以使用“叹号接编号”的方式运行特定的历史
!+字母:调出最近使用一次以此字母开头的命令
!!: 表示最近使用的一次操作的命令
!+数字:表示调出历史记录的几条命令
!-数字:调出最近的几条命令

常用的命令展示

历史命令显示执行时间【默认只显示序号和命令】

# 临时生效
[root@localhost ~]# export HISTTIMEFORMAT='%F %T'
[root@localhost ~]# echo $HISTTIMEFORMAT
[root@localhost ~]# history 2
# 永久生效
[root@localhost ~]# vim /root/.bash_history
        --->  添加 export HISTTIMEFORMAT='%F %T'
source /root/.bashrc    # 命令生效 

查看history的缓存数量

# 直接查看变量[root@localhost ~]# echo $HISTSIZE
# 查看文件内容
[root@localhost ~]# cat /etc/profile | grep 'HISTSIZE'注意:HISTSIZE=0,表示禁用history

 查看最近10条命令
[root@localhost ~]# history 10

使用最近一次使用的命令

[root@localhost ~]# !!

使用第Num条命令

[root@localhost ~]# !994

显示最近使用的某个特定命令

[root@localhost ~]# !echo

获得上一条命令的参数

[root@localhost ~]# ls sun.txt
[root@localhost ~]# cat !$

更改历史记录信息

echo $HISTSIZE

export $HISTSIZE=500

history -c   清除所有的历史记录

history -d 212  清除212行的命令数据

永久生效:

echo "export TMOUT = 300" >> /etc/profile

echo "export $HISTSIZE=500" >> /etc/profile

echo "export $HISTFILESIZE=500" >> /etc/profile   只有500历史记录

source /etc/profile  永久生效  (source == .)

注意: cat ~/.bash_history   (历史记录文件的命令数量,属于用户的变量)

Linux history命令详解的更多相关文章

  1. linux history 命令详解

    linux history 命令详解 显示命令执行时间 linux shell 具有history 功能,即会记录已经执行过的命令,但是默认是不显示命令的执行时间,命令的执行时间,history 已经 ...

  2. Linux常用命令详解下

    Linux常用命令详解 目录 一.Linux常用命令 1.1.查看及切换目录(pwd.cd.ls.du) 1.2.创建目录和文件(mkdir.touch.ln) 1.3.复制.删除.移动目录和文件(c ...

  3. linux awk命令详解

    linux awk命令详解 简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分 ...

  4. linux cat 命令详解

    linux cat 命令详解 http://linux.chinaunix.net/techdoc/system/2007/11/16/972467.shtml adb shell su //这个不一 ...

  5. 【初级】linux rm 命令详解及使用方法实战

    rm:删除命令 前言: windows中的删除命令大家都不陌生,linux中的删除命令和windows中有一个共同特点,那就是危险,前两篇linux mkdir 命令详解及使用方法实战[初级]中我们就 ...

  6. Linux netstat命令详解

    Linux netstat命令详解 一  简介 Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多 ...

  7. linux grep命令详解

    linux grep命令详解 简介 grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来 ...

  8. Linux chmod命令详解

    Linux chmod命令详解 chmod----改变一个或多个文件的存取模式(mode)   chmod [options] mode files   只能文件属主或特权用户才能使用该功能来改变文件 ...

  9. 【转发】linux yum命令详解

    linux yum命令详解 yum(全 称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理, ...

随机推荐

  1. springboot-11-servlet, listener, fitlter的添加

    springboot中添加servlet, filter, listener有2种方式: 代码注册servlet 和自动注解注册(在使用druid监控有使用过) 代码注册通过ServletRegist ...

  2. C#中的Dictionary类,默认key是区分大小写的

    在C#中定义一个Dictionary Dictionary<string,string> dictionary = new Dictionary<string,string>( ...

  3. rpm使用方法

    查看rpm信息:rpm -q [软件的rpm名字]rpm -q下还有很多选项,具体功能如下:rpm -qa                列出所有已安装的RPM文件rpm -qa | grep [rp ...

  4. 修改ASP.NET文件上传大小限制

    转自:http://www.hello-code.com/blog/asp.net/201603/5954.html 要点: 1.web.config中的<httpRuntime maxRequ ...

  5. nginx 学习笔记(1) nginx安装

    1.nginx安装 根据操作系统的不同,nginx的安装方式也不相同. 1.1 对linux系统来说,nginx.org提供了nginx安装包.http://nginx.org/en/linux_pa ...

  6. MongoDB之集合管理二

    上一博客写了集合的管理,集合里面存放的是文档,因此聪明的你应该能想到这篇是学习文档管理.要说标题应该是文档管理,不过对于文档的管理都是先获得集合对象,在集合对象上调用方法管理文档,所以标题还是对集合的 ...

  7. Node.js处理I/O数据之Buffer模块缓冲数据

    一.前传 在之前做web时也经常用到js对象转json和json转js对象.既然是Node.js处理I/O数据,也把这个记下来. Json转Js对象:JSON.parse(jsonstr); //可以 ...

  8. 发起qq临时会话

    http://wpa.qq.com/msgrd?v=3&uin=947739614&site=qq&menu=yes

  9. 主打安全 阿里巴巴联合公安部打造PMOS

    4月9日,CITE2015(第三届中国电子信息博览会)在深圳会展中心举行,大会主要以“智能新时代.数字新生活”为主题.说道这,就不得不提国内互联网巨头阿里巴巴.大会中阿里巴巴不仅带来了早前马云曾经在德 ...

  10. JAVA 项目 调用外部的WebSerivce接口,入门实例 (一)

    前言: 第一次接触WebService,工作需要,调用外部的WebService接口,所以暂时我这里不考虑发布,做个记录,待以后回来可以看看,只是最初级的,所以有何不好.不对的地方,欢迎看到的同僚给予 ...