linux命令历史详解

概念:顾名思义,我们在linux终端输过的命令,系统都会将他们加载到内存中,以便我们快速调用命令。另外,Bash拥有自动记录命令历史的功能,用户所执行的命令会在注销时自动记录到自己的家目录下的.bash_history隐藏文件中,这样方便我们了解用户的对系统的整个操作过程,查询可能出错的原因。

查看命令历史记录的方法:

  1. 可以通过直接打开文件来查看

命令

[[email protected] ~]$ cat .bash_history

2.通过键盘的上下键来上翻或下翻历史记录

3.通过history命令查看历史记录

命令历史:

命令历史相关的设置:

echo $HISTSIZE查看变量历史命令的大小(缓存多少条命令)命令历史的大小默认是1000,

echo $HISTFILESIZE命令历史文件大小(命令历史文件能保存多少条历史命令)

echo $HISTTIMEFORMAT(显示命令执行时间)

echo $HISTFILE命令历史文件(/root/.bash_history用户的路径)

echo $HISTCONTROL查看历史记录保存方式:

ignoredups不记录后面重复的命令(只记录连续重复命令一次)

ignorespace不记录以空白开头的命令

ignoreboth不记录以空白开头的命令,且连续重复的命令只记录一次

使用方法:修改缓存中命令历史大小

第一步: echo "HISTSIZE=10" >> /etc/profile(加载变量到文件中)

第二步 :  source /etc/profile(载入缓存)

第三步 :   vim /etc/profile(查看是否加入到文件中)

第四步 :     history (查看命令历史大小)

[[email protected] ~]# echo "HISTSIZE=10" >> /etc/profile
[[email protected] ~]# vim /etc/profile
[[email protected] ~]# source /etc/profile 
[[email protected] ~]# history 
  257  as
  258  fas
  259  afs
  260  af
  261  a
  262  fhsitory
  263  history 
  264  vim /etc/profile
  265  source /etc/profile 
  266  history

以下几个环境变量可以遵照上面方式修改,查看执行结果

histroy查看命令历史

-c清空命令历史

-d删除指定的hsitory记录,后面可以加第多少条

-a追加,将历史命令存盘(将缓存中的新命令追加到历史文件)

-w将缓存的内存保存在历史文件中(替换命令历史存盘)

history -d 500删除第500行记录,后面的往上移动

history -d 500 10删除第500行开始,往后的10行

历史命令的使用技巧:

执行第100条   !n-------!100

!-n执行命令历史的倒数第多少条

!!执行上一条历史

!man执行最近的一次与执行字符串开头的命令

!$应用前一个命令的最后一个参数

!^应用前一个命令的第一个参数

esc 按下在松开再按.可以显示上一条命令

几个常见的配置文件:

命令历史文件配置       /etc/profile :全局有效    /.bash_profile:当前用户有效

命令历史缓存配置    /etc/bashrc :全局有效    /.bash_history :当前用户有效

总结重复执行上一次命令的方法: !!, !-1, ctrl+p ,按上键

注意点:

执行命令后,系统自动把命令加载到缓存中,退出shell后加载到/.bah_history  重新登录shell时,会自动读取命令历史/.bash_history.

时间: 2024-10-07 14:27:10

linux命令历史详解的相关文章

BASH命令历史详解

bash 命令历史 HISTSIZE HISTFILE HISTFILESIZE HISTCONTAOL HISTCONTAOL=ignoresspace ignoredups:      忽略重复命令 ignoresspace:    忽略以空白字符大头的命令 ignoreboth:     以上二者同时生效 shutdown -h -r -c 时间格式 now +m reboot:     重启 halt:       关机 poweroff    关机

linux命令:find详解

Linux中find命令常见用法示例: find path -option [-print] [ -exec -ok command ] {} \; #-print 将查找到的文件输出到标准输出#-exec    command    {} \;       -----将查到的文件执行command操作,{} 和 \;之间有空格#-ok 和-exec相同,只不过在操作前要询用户-name    filename               #查找名为filename的文件-perm       

linux命令大全详解

#!/bin/bash if [[ "$(whoami)" != "root" ]]; then echo "Please run this script as root." >&2 exit 1 fi echo "------- system init ---------" echo "------- epel -------" cd /etc/yum.repos.d/ if [ -f Ce

linux wget 命令用法详解(附实例说明)

Linux wget是一个下载文件的工具,它用在命令行下.对于Linux用户是必不可少的工具,尤其对于网络管理员,经常要下载一些软件或从远程服务器恢复备份到本地服务器.如果我们使用虚拟主机,处理这样的事务我们只能先从远程服务器下载到我们电脑磁盘,然后再用ftp工具上传到服务器.这样既浪费时间又浪费精力,那不没办法的事.而到了Linux VPS,它则可以直接下载到服务器而不用经过上传这一步.wget工具体积小但功能完善,它支持断点下载功能,同时支持FTP和HTTP下载方式,支持代理服务器和设置起来

linux nc命令使用详解(转)

linux nc命令使用详解 功能说明:功能强大的网络工具 语 法:nc [-hlnruz][-g<网关...>][-G<指向器数目>][-i<延迟秒数>][-o<输出文件>][-p<通信端口>][-s<来源位址>][-v...][-w<超时秒数>][主机名称][通信端口...] 参 数: -g<网关> 设置路由器跃程通信网关,最丢哦可设置8个. -G<指向器数目> 设置来源路由指向器,其数值为4的

(备忘)Linux mount(挂载命令)详解

挂接命令(mount) 首先,介绍一下挂接(mount)命令的使用方法,mount命令参数非常多,这里主要讲一下今天我们要用到的. 命令格式:mount [-t vfstype] [-o options] device dir 其中: 1.-t vfstype 指定文件系统的类型,通常不必指定.mount 会自动选择正确的类型.常用类型有: 光盘或光盘镜像:iso9660 DOS fat16文件系统:msdos Windows 9x fat32文件系统:vfat Windows NT ntfs文

Linux 下的dd命令使用详解

dd if=/dev/zero of=的含义是什么?Linux 下的dd命令使用详解     一.dd命令的解释 dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换. 注意:指定数字的地方若以下列字符结尾,则乘以相应的数字:b=512:c=1:k=1024:w=2 参数注释: 1. if=文件名:输入文件名,缺省为标准输入.即指定源文件.< if=input file > 2. of=文件名:输出文件名,缺省为标准输出.即指定目的文件.< of=output file >

(转)linux nc命令使用详解

linux nc命令使用详解 原文:https://www.2cto.com/os/201306/220971.html 功能说明:功能强大的网络工具 语 法:nc [-hlnruz][-g<网关...>][-G<指向器数目>][-i<延迟秒数>][-o<输出文件>][-p<通信端口>][-s<来源位址>][-v...][-w<超时秒数>][主机名称][通信端口...] 参 数: -g<网关>  设置路由器跃程

Linux常用命令与详解

Linux常用命令与详解 在Linux系统中文件删除.创建.更改等操作都是通过一个个不同的命令来完成我们想要的操作,那么什么是命令呢? 凡是在字符操作界面中输入的能够完成特定操作和任务的字符串都可以称为命令.严格来说,命令通常只代表了实现某一类功能的指令或程序的名称. 下面我们就来了解Linux系统中命令的分类有哪些?命令行的组成格式有哪些?常用的命令有哪些? Linux命令的分类 内部命令 内部命令是指集成于 Shell 解释器程序内部的一些特殊指令,也称为内建指令.内部命令无须从硬盘中重新读