首页 > 系统相关 > Linux基础命令-history历史记录

Linux基础命令-history历史记录

时间:2023-02-12 17:37:04浏览次数:46  
标签:历史记录 rpm 命令 Linux root localhost history


前言

        在工作中,经常会需要多次重复某一个命令,或者需要查看之前执行过什么命令,那么都少不了history这个命令,下面一起来看看吧。

一、history命令介绍

        history的英文单词来源于它自己,主要功能是用于显示与管理历史记录。linux系统默认会记录用户所执行过的所有命令,可以使用history命令查阅它们,也可以对其命令进行修改和删除操作。

二、语法及参数

1)用help或man查看history命令

语法:history 【参数】/ history 【参数】文件

[root@localhost ~]# help history
history: history [-c] [-d 偏移量] [n] 或 history -anrw [文件名] 或 history -ps 参数 [参数...]
选项:
-c 删除所有条目从而清空历史列表。
-d 偏移量 从指定位置删除历史列表。

-a 将当前绘画的历史行追加到历史文件中
-n 从历史文件中读取所有未被读取的行
-r 读取历史文件并将内容追加到历史列表中

-w 将当前历史写入到历史文件中
并追加到历史列表中

-p 对每一个 ARG 参数展开历史并显示结果
而不存储到历史列表中
-s 以单条记录追加 ARG 到历史列表中

2)命令的常用参数:

-a

写入命令记录

-c

清空命令记录

-d

删除指定序号的命令记录

-n

读取命令记录

-r

读取命令记录到缓冲区

-s

将指定的命令添加到缓冲区

-w

将缓冲区信息写入到历史文件

 三、参考实例

1)显示历史记录,且再次执行其中的一个命令;

[root@localhost ~]# history
1 rpm -ivh httpd
2 rpm -ivh http
3 which rpm
4 rpm -qa | wc -l
5 which rz
6 rpm -qf /usr/bin/rz
7 rpm -e lrzsz --nodeps
8 which rz
9 rpm -p
10 rpm repolist
[root@localhost ~]# !3 #!数字
which rpm
/usr/bin/rpm
[root@localhost ~]# vim /etc/bashrc #ctrl+r 快捷键从下往上搜索,右方向键确定
(reverse-i-search)`vim': vim /etc/bashrc
[root@localhost ~]# !cd #!字符串
cd ~

 有三种方式可以再次执行历史记录的命令:

  • 第一个方式是:!数字
  • 第二个方式是: ctrl+r 快捷键从小往上搜索,右方向键确定
  • 第三个方式是: !字符串

2)打印3行历史记录内容;

[root@localhost ~]# history 3
46 history --help
47 history
48 history 3

3)将本次缓冲区信息写入到历史文件中; 历史记录是有一个本地用户文件的(~/.bash_history)

将文件给删除了,文件内的内容也一并删除了,不过用户重新登入会自动生成一个相同文件出来。

[root@localhost ~]# history -w
[root@localhost ~]# tail -n 3 .bash_history
history
history 3
history -w

 4)将历史文件中的信息读入到当前缓冲区中;

[root@localhost ~]# history -r
[root@localhost ~]# history
1 yum grouplist
2 df -h
3 yum grouplist

5)将本次缓冲区信息追加写入到历史记录中;

[root@localhost ~]# history -a

6)清空本次缓存区;

[root@localhost ~]# history -c
[root@localhost ~]# history
1 history

7)如果要设置一个用户的密码,但是又担心显示在历史记录会被看到,可以用-d删除;

[root@localhost ~]# useradd user1
[root@localhost ~]# echo "123456" | passwd --stdin user1
更改用户 user1 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@localhost ~]# history 2
4 echo "123456" | passwd --stdin user1
5 history 2
[root@localhost ~]# history -d 4
[root@localhost ~]# history 3
4 history 2
5 history -d 4
6 history 3

8)因为history默认只能保留1000条历史记录的数量,所以若要增加数量到2000,可以通过修改变量写入到文件里;

[root@localhost ~]# echo $HISTSIZE
1000
[root@localhost ~]# vim .bash_profile
[root@localhost ~]# tail -n1 .bash_profile
export HISTSIZE=2000
[root@localhost ~]# source .bash_profile
[root@localhost ~]# echo $HISTSIZE
2000
[root@localhost ~]#

总结

        history遇到重复执行的命令,可以继续用来执行,并且这个命令的参数上不会太多,只有几个常用到的。

        如果觉得内容还行,请一定要点个赞再走,谢谢!


标签:历史记录,rpm,命令,Linux,root,localhost,history
From: https://blog.51cto.com/u_14592502/6052092

相关文章

  • Linux基础命令-date设置时间
    前言    服务器上的时间往往要用到这个命令,而date命令能修改的不仅仅是时间,还可以修改时区,同步大厂的时间等。一、date命令的介绍    date命令来自于英文单......
  • Linux文件管理命令(4)-cat查看文件内容
     前言    cat主要是用来查看文件内容的,一般也搭配管道符一起来使用,比如有时候要计算文件有多少行或者要截取里面的内容,都还是很实用的。一、cat命令介绍   ......
  • Linux文件管理命令-head显示文件开头的内容
    前言    head命令在日常比较常用的一个命令,如果只想查看文件的前几行内容,就可以用这个命令,还可以自定义选择要查看多少行,一起来看看这个命令的使用吧。一、head命令......
  • linux系统编程
    linux应用编程也叫linux系统编程,应用程序可以通过系统调用直接调用内核或者通过标准库来调用内核,前者在arm系统中通过软中断来实现。linux系统编程的内容如下:一、文件IO......
  • [转]linux查询公网ip(即提供返回公网ip的网站API)
    原文地址:linux下使用命令行获取公网ip地址-简书(jianshu.com)有时候需要获得本机的公网IP地址,如果在Linux下只能通过命令行获取公网ip地址的话,可以参考本文收集的几......
  • linux环境千万数据导入mysql遭遇问题
    看黑马mysql视频有数据是一千万条数据,分批使用loadfile方式导入数据库表的时候出现了导入失败问题表结构CREATETABLE`tb_sku`(`id`int(11)NOTNULLAUTO_INC......
  • Linux学习-day9
    第六章存储结构与管理硬盘6.1一切从“/”开始Linux系统中一切都是文件​Linux系统中的一切文件都是从“根”目录(/)开始的,并按照文件系统层次标准(FHS)采用倒树状结构来存放......
  • Linux基础命令-ls显示目录和文件的属性信息
    前言        ls命令是常需要用到的linux命令之一,熟悉其参数的搭配有利于操作上的便利,ls命令可以显示目录和文件的属性,一起来看下展开的属性有哪些。一、ls命令介绍......
  • Linux基础命令-cd切换目录
    前言        cd命令是一个频繁使用到的命令,熟悉其参数的搭配有利于操作上的便利,这个命令用于切换目录,一起了解看看。一、cd命令介绍    cd命令来自于英文词......
  • Linux基础命令-alias设置别名
    前言在前文当中也有多次提到alias这个命令,如果说频繁使用一个很长的命令,就可以把它定义一个别名,往往几十个字符的命令会变成几个字母而已,大大提高了工作效率。一、alias命令......