Bash基础特性-命令历史

shell进程会在其会话中保存此前用户提交并执行过的命令

可以使用~]# history进行查看,history命令本身属于shell的内嵌命令

命令历史可分为内存中的历史命令以及历史文件中的历史命令,其容量默认大小均为1000条(可修改),从主机开机到关机的这段时间中所用到的命令会保存在内存中,关机后系统会自动将内存中的历史命令写入命令历史文件中(/root/.bash_history),若此时历史文件容量不够时会自动清除过去的命令。执行history-r后执行history的操作时,历史文件与内存的容量并不冲突,即使超过容量大小仍可以正常显示

history命令用法:

  常用选项:

    -c:清空历史命令(内存中的命令)

    -d 偏移量:删除指定历史命令

    -r:从历史文件中读取历史命令至历史列表(内存)中

    -w:把历史列表中的命令追加之至历史文件中

    history#:显示最近#条命令

若希望定制history的功能,可通过改变其环境变量来实现:

HISTSIZE:shell进程可保留的历史命令条数

HISTFILE:持久保持命令历史的文件

HISTFILESIZE:命令历史文件的大小

调用命令历史列表中的命令:

  ~]# !#:再一次执行历史列表中的第#条命令

  ~]# !!:再一次执行上一条命令

  ~]# !STRING:再一次执行命令历史中列表的最近一个以STRING开头的命令

  注意:命令的重复执行有时需要依赖于幂等性,即命令可重复执行,如mkdir命令就不能重复执行

调用上一条命令的最后一个参数:

  快捷键:按ESC后按.

  字符串:!$

控制命令历史记录的方式:(仅对当前的shell进程有效)

  通过控制环境变量HISTCONTROL来实现

  HISTCONTROL可取值选项:

    ignoredups:默认值,忽略重复命令

    ignorespace:忽略以空白字符开头的命令

    ignoreboth:忽略以空白字符开头的命令且忽略空白

  通过设置HISTCONTROL设置其参数为ignorespace或ignoreboth可实现隐藏所输入的命令,即输入命令时以空白字符开头即可

修改变量值的方式:NAME=‘VALUE‘

原文地址:https://www.cnblogs.com/Donquixote-Corazon/p/11629993.html

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

Bash基础特性-命令历史的相关文章

bash 基础特性命令引用

bash 命令引用: $(COMMAND)  或 2. `COMMAND`   这是反引号:就是ESC键下面的那个反引号 bash 的引用特性 :  引用 强引用 :'' 单引号 弱引用 : "" 双引号 命令引用 : $(COMMADN) bash 特性: 快捷键 ctrl + a :跳转至命令行首 ctrl + e :跳转至命令行行尾 ctrl + u :删除行首至光标所在处之间的所有字符 ctrl + k :删除光标所在处至行尾的所有字符 ctrl + l : 清屏,相当于cle

0823第三课-2 Linux的文件系统 bash基础特性

1.linux文件系统 绝对路径:/ LSB: FHS(文件系统层级结构标准) FHS: /boot: 引导文件存放目录,例如kernel(vmlinuz).bootloader(grub, grub2): 包含开机菜单以及开机所需要的配置文件等等 [[email protected] boot]# lsconfig-2.6.32-504.el6.x86_64         lost+foundefi                                  symvers-2.6.3

谢烟客---------Linux之Bash基础特性条件测试&&自定义退出状态码(6)

条件测试 判断某需求是否满足,需要由测试机制来实现. 根据命令的执行状态结果,表达不同的测试条件 1.根据id命令的执行状态结果,判断用户是否存在 [[email protected] ~]# id root uid=0(root) gid=0(root) groups=0(root) [[email protected] ~]# echo $? 0 [[email protected] ~]# id help id: help: no such user [[email protected] 

2017-11-5Linux基础知识(10)bash基础特性

在上一章中我们讲述了bash基础特性之命令补全和路径补全以及它的命令引用,以及讲了文件管理命令,例如:复制.移动和删除,然后我们也讲述了变量,主要围绕着存储格式.数据范围和参与运算.那么这次我们继续讲述bash的基础特性,这一次我们讲述的是文件的通配符和IO重定向等. 一.globbing:文件名通配 我们在查询某些文件的时候,通常是在该目录下进行查找,有的时候文件繁多,想找一些特定的文件就得从该目录下逐个匹配进行查找进行通配,如果没找到则显示为空,找到的话就在下面显示该匹配结果的文件或目录,那

Linux的文件系统、系统管理类命令、bash基础特性

Linux的文件系统根文件系统(rootfs) root fileysystem LSB,FHS(Filesystem Heirache Standard)文件系统层级结构标准,如:/etc./usr./var./root./home./dev /boot:引导文件存放目录,内核文件(vmlinuz).引导加载器(bootloader,grub)都存放于此目录: /bin:供所有用户使用的基本命令:不能关联至独立分区,OS启动即会用到的程序: /sbin:管理类的基本命令:不能关联至独立分区,O

Linux自学笔记(7):bash基础特性及基础命令

bash的基础特性(1)命令历史history调用上一条命令的最后一个参数!$ESC,.atl+.控制命令历史的记录方式环境变量:HISTCONTROLignoreedups:忽略重复的命令:连续且相同为"重复"ignorespace:忽略所有以空白开头的命令ignoreboth:ignoreedups,ignorespace 修改环境变量的方式:export 变量名为"值"变量赋值:把赋值符号后面的数据存储于变量名指向内存空间:(2)命令补全bash执行命令:内部

bash特性-命令历史命令行编辑

bash: GUI:Gnome,KDE,XFCE CLI:sh,csh,bash,ksh,tcsh,zsh shell,子shell tree:查看目录树 pstree:查看进程目录树 bash: 1.命令历史.命令补全 2.管道.重定向 3.命令别名 4.命令行编辑 5.命令行展开 6.文件名通配 7.变量 8.编程 命令行编辑: 光标跳转: Ctrl+a:跳到命令行首 Ctrl+e:跳到命令行尾 Ctrl+u:删除光标至命令行首的内容 Ctrl+k:删除光标至命令行尾的内容 Ctrl+l:清

linux文件系统及bash基础特性

linux文件系统 一.根文件系统 linux被识别的第一个被称为根之间关联的文件系统叫做根文件系统(rootfs),其他分区要想被读到,需要挂载到根目录的某个挂载点(根的子目录)上.根文件系统至关重要,整个文件系统统一访问入口. Linux引导启动时,默认使用的文件系统是根文件系统.其中一般都包括这样一些子目录: /boot 系统引导文件存放目录 /bin 供所有用户使用的命令(不能关联到独立分支)不能关联到独立分区,os启动即会用到的程序. /sbin 管理员使用特权命令.root-only

Bash基础特性 -- 卷一

 Linux Bash的基础特性 一.history(命令历史记录) 1.语法与常用参数 history 列出当前shell的所有history history [-c] 将当前shell的所有 history 清除 history [n] n为数字,列出最近的n条记录 history [-raw] histfiles -a [HISTFILES] :手动追加当前会话缓冲区的命令历史至文件中,如果histfiles事先不存在,则创建, 如果不指定histfiles文件,则默认写入~/.bash_