history 用法大全

 history 命令用于显示指定数目的指令命令,读取历史命令文件中的目录到历史命令缓冲区和将历史命令缓冲区中的目录写入命令文件。
 
语法
history  [options]  [file]
 
options
-a:缓冲区追加写入文件
-w:缓冲区覆盖写入文件
-r:读取历史文件到缓冲区
-c:清空缓冲区
n:打印最近n条历史
 
执行历史记录中的命令
 
!n:执行第 n 条命令
!!:执行上一条命令
!-n:执行倒数第 n 条命令
!str:执行最后一个以 str 打头的命令
上(Ctrl+P)下键:切换历史命令
Ctrl + r:搜索
 
 
获取历史命令中参数(! 或 !! 打头)
格式:
! (^  $  * )  :   第m个参数
!  第n条命令  (^   $  *  m)
 
用法:
!^  第一个参数
!:m  第m个参数
 
!n:^   第n条命令的第一个参数
!n:m  第n条命令的第m个参数
 
!string:^ 以 string 开头的命令的第一个参数
!string:n  以 string 开头的命令的第n个参数
 
实例:
ls /usr/local/etc
#如同执行 cd /usr/local/etc
cd !*
 
环境变量
 
HISTTIMEFORMAT="`hostname` %F  %T  " :配置格式化的时间 命令历史前加入 主机名 、日期、时间等信息
HISTSIZE=500 :指定最大记录条数
HISTIGNORE="ls:ll:pwd:history"  :指定不记录到历史中的命令,不能带参数
HISTFILE :指定存放的文件(~/.bash_history)
HISTCONTROL="ignoredups":控制记录方式
 
ignoredups:不记录连续重复的命令
ignorespace:不记录空格开头的命令
ignoreboth:不记录连续重复和空格打头的命令
erasedups:重新记录并删除之前完全相同的命令
 
 
示例:
 
#选择写入 bashrc 是因为每当打开新的终端,修改自动生效
vim /etc/bashrc
 
#添加内容

alias add-path="vim /etc/bashrc"
alias clear-history="history -c && history -w"

export HISTSIZE=500; HISTTIMEFORMAT="%F "; HISTCONTROL="ignoredups"
export HISTIGNORE="ls:ll:pwd:history"
 
 
posted @   心随所遇  阅读(1829)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示