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. 我的zsh 配置

    # If you come from bash you might have to change your $PATH.# ZSH的环境变量export ZSH=/Users/lorialex/.oh ...

  2. XRP节点部署

    目录 XRP节点部署 准备 硬软件配置(建议) 安装Rippled服务 一. 以Stock Server模型运行 在何种情况下运行此模式 二 .以 Validator模式运行 在何种情况下运行此模式 ...

  3. <MYSQL Index>

    About Mysql 1. Mysql工作流程分析 2. Mysql单实例安装(5.6.31) DATABASE 1. 事务的4种隔离级别 ——————————————————Mysql管理———— ...

  4. 14.Iterator 和 for...of 循环

    Iterator 和 for...of 循环 Iterator 和 for...of 循环 Iterator(遍历器)的概念 JavaScript 原有的表示"集合"的数据结构,主 ...

  5. [有料组每日学习分享计划--00087]32行代码帮你导出IOS酷我音乐下载的无损音乐

    需求与研究: 1.IOS的酷我音乐软件,还是不错滴,可以直接下载APE或是320K的MP3音乐,但是我发现PC上的酷我反而没这个功能,而且其他的音乐软件一般只能下载中低品质的音乐.所以能够从IOS中找 ...

  6. SQL Server中使用表值函数

    函数有很多限制,不能使用动态语句,不能使用临时表等等...细看一下,直接写语句就行了,不用动态语句 insert into @re select id,parid,@I from videoclass ...

  7. Promise异步编程整理

    1.单线程模型 单线程模型指的是,JavaScript 只在一个线程上运行.也就是说,JavaScript 同时只能执行一个任务,其他任务都必须在后面排队等待. 注意,JavaScript 只在一个线 ...

  8. 二:java常用快捷键

    ctrl+F6 切换编辑器 Ctrl+E 快速显示当前Editer的下拉列表 Ctrl+1 快速修复 Ctrl+D: 删除当前行 Ctrl+Alt+↓ 复制当前行到下一行(复制增加) Alt+Shif ...

  9. Differences between write through and write back

    https://stackoverflow.com/questions/27087912/write-back-vs-write-through

  10. Differences between page and segment

    https://techdifferences.com/difference-between-paging-and-segmentation-in-os.html how does paging so ...