您的位置:

linux命令历史的查看和使用技巧

作为一名开发工程师,熟练地掌握linux系统的使用是必不可少的。其中,命令历史是使用频率非常高的一个功能,能够帮助我们快速地回顾和重复之前执行的命令,提高工作效率。在本文中,我们将从多个方面对linux查看命令历史进行详细的阐述,帮助大家更好地掌握这一功能。

一、查看命令历史

在linux的终端中,我们可以通过输入history命令来查看过去执行的命令历史记录:

history

执行上述命令后,系统会将近期执行的命令记录以及对应的命令编号都展示出来:

1  ls
2  cd Documents/
3  vim test.py
...

我们可以看到,系统将历史命令记录下来并编上了编号,方便我们进行查找和使用。

二、查找命令历史

如果我们想要查找某个特定的命令,可以使用history命令结合grep命令进行查找。例如,我们要查找包含"python"关键词的命令,可以执行以下命令:

history | grep python

执行以上命令后,系统会将符合条件的命令记录都展示出来,帮助我们快速找到需要的命令。

三、重复执行上一条命令

当我们需要重复执行上一条命令时,可以使用"!!"符号来实现。例如,如果我们在执行一个命令时忘记了加sudo权限,可以通过以下命令来快速重新执行:

sudo !!

系统会自动将上一条命令的内容补充到当前命令中,我们只需要在前面加上sudo即可再次执行。

四、重复执行某个命令

如果我们需要重复执行历史记录中的某个特定命令,可以使用"!数字"的方式来实现,其中数字代表着历史命令记录中对应命令的编码。例如,如果我们需要重复执行编码为4的历史命令,可以执行以下命令:

!4

系统会自动将编码为4的历史命令记录取出来,执行对应命令。

五、清空命令历史

有时候,我们不希望我们的历史命令记录被他人或者机器所查看,我们可以清空命令历史记录。执行以下命令即可将历史命令记录清空:

history -c

执行以上命令后,我们的历史命令记录会被完全清空。

六、命令历史记录的保存

在默认情况下,linux的命令历史记录不会被永久保存,而是只会保留一定的时间。如果我们希望永久保存命令历史记录,可以通过在~/.bashrc或者~/.bash_profile中添加以下语句来实现:

export HISTFILESIZE=-1
export HISTSIZE=-1
export HISTTIMEFORMAT="%F %T " 
export PROMPT_COMMAND="history -a;history -c;history -r;$PROMPT_COMMAND"

以上语句中,export HISTFILESIZE=-1表示将历史命令记录保存到永久记录文件中,export HISTSIZE=-1表示将命令历史记录保存到内存中。export HISTTIMEFORMAT="%F %T "是设置命令历史记录的时间格式。export PROMPT_COMMAND="history -a;history -c;history -r;$PROMPT_COMMAND"则是将当前操作的命令立即添加到历史记录中,并清空之前的记录,同时重新载入历史记录。

七、结语

本文介绍了linux命令历史的查看和使用技巧,希望大家可以通过本文更好地掌握这一功能,提高工作效率。