使用history命令,取得命令历史,当bash进程结束后,会把命令历史存放到文件中,下次开机还能看到命令历史。

  • 定制history:通过设置环境变量,来定制history

    • 环境变量$HISTSIZE:默认值是1000,也就是最多存1000条命令。

    • 环境变量$HISTFILE:默认值是/home/登录用户/.bash_history。root用户是/root/.bash_history。bash进程退出后,把内存里的命令历史存放到此文件中。

    • 环境变量$HISTFILESIZE:默认值是1000。命令历史文件的大小。

    • 环境变量$HISTCONTROL:默认值是ignoredups。忽略重复的命令。

      • ignorespace:忽略以空格开头的命令。当不想让命令记录到history中时,使用此技巧。
      • ignoreboth:忽略以空格开头的命令,忽略重复的命令。
    • 修改环境变量的方法

      $ HISTCONTROL=ignoreboth
  • 语法:history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg [arg...]

    • -c:清空全部历史
    • -d offset:删除指定位置的历史
    • -a:只把在这个会话里用过的命令,追加保存到文件$HISTFILE中
    • -r:加载文件$HISTFILE里的内容到history list内存中。
    • -w:把history list内存中的所有命令,都追加到文件$HISTFILE中
    • n:显示最后n条命令历史。
  • 调用历史命令!

    • !n:执行指定n处的命令
    • !!:执行上一次命令
    • !STRING:执行最近一个以STRING开头的命令。
  • 获得上一次命令里的最后一个参数

    • Esc .

    • Alt .

    • !$

      # ls /etc/systemd/system/sysinit.target.wants/
      dmraid-activation.service lvm2-monitor.service rhel-import-state.service
      iscsi.service multipathd.service rhel-loadmodules.service
      lvm2-lvmetad.socket rhel-autorelabel.service
      lvm2-lvmpolld.socket rhel-domainname.service
      # cd !$
      cd /etc/systemd/system/sysinit.target.wants/

c/c++ 学习互助QQ群:877684253

本人微信:xiaoshitou5854

linux bash基础特性的更多相关文章

  1. Linux bash基础特性二

    shell脚本的组成部分 shebang 各种命令组合 编程变量种类 本地变量: 仅仅在当前的shell生效 环境变量: 在当前和子shell生效 局部变量: shell进程某代码片段 位置变量: $ ...

  2. Linux bash基础特性一

    命令别名 alias cdnet=”cd /etc/sysconfig/network-scripts” 针对用户的别名: “~/.bashrc” 针对系统的别名:”/etc/bashrc” 重读配置 ...

  3. linux bash基本特性

    一.bash 基础特性 (1)命令历史的功能 history: 环境变量 HISTSIZE:命令历史记录的条数 HISTFILE: ~/.bash_history 每个用户都有自己独立的命令历史文件 ...

  4. linux文件系统及bash基础特性

    linux文件系统 一.根文件系统 linux被识别的第一个被称为根之间关联的文件系统叫做根文件系统(rootfs),其他分区要想被读到,需要挂载到根目录的某个挂载点(根的子目录)上.根文件系统至关重 ...

  5. Bash 基础特性

    命令别名  alias 显示当前shell中定义的所有别名  alias 别名='原始命令'  unalias 别名 取消定义的别名在命令前加\使用命令本身,而不是别名(或者使用绝对路径执行命令使用命 ...

  6. bash基础特性3(shell编程)

    Linux上文本处理三剑客: grep:文本过滤工具 sed:stream editor,文本编辑工具 awk:文本报告生成器 grep -v:显示不能够被pattern匹配到的行 -i:忽略字符大小 ...

  7. bash基础特性2

    命令别名(alias) ()alias 显示当前shell进程所有可用的命令别名: ()alias NAME='VALUE' 定义别名NAME,相当于执行命令value ()unlias 撤销别名 注 ...

  8. bash基础特性1

    shell俗称壳(用来区别于内核),是指“提供使用者使用界面”的软件,就是一个命令行解释器. BASH是SHELL的一种,是大多数LINUX发行版默认的SHELL,除BASH SHELL外还有C SH ...

  9. 自学Linux Shell19.1-gawk程序基础特性

    点击返回 自学Linux命令行与Shell脚本之路 19.1-gawk程序基础特性 linux世界中最广泛使用的两个命令行编辑器: sed gawk 1. gawk概念 awk是一个强大的文本分析工具 ...

随机推荐

  1. HDU-1698-----Just Hook

    In the game of DotA, Pudge's meat hook is actually the most horrible thing for most of the heroes. T ...

  2. HDU 1520 Anniversity party

    There is going to be a party to celebrate the 80-th Anniversary of the Ural State University. The Un ...

  3. usb2.0高速视频采集之68013A寄存器配置说明

    任何的固件编程离不开与与原理图参考,图纸中所采用的是USB的Slave_fifo传输方式,具体配置与图纸对应即可. •USB_IFCLK:同步Slave_FIFO模式,输入频率范围5M-48M,在FP ...

  4. 经典常用SQL语句大全

    创建表 --删除表 --DROP TABLE [dbo].[Test] --创建表 CREATE TABLE [dbo].[Test] ( ,) PRIMARY KEY, ----自增主键 ) NUL ...

  5. Beego在views中格式化显示时间(int64转string)

    最近在使用beego开发系统的过程中,遇到时间转换问题,需求如下: 通过以下函数获取Unix时间戳,后台数据库格式为int64: time.Now().Unix() 效果图: 从数据库获取数据,直接以 ...

  6. JS数据结构——队列

    创建一个自己的类来表示一个队列 function Queue() { //这里写属性和方法 } 首先需要一个用于存储队列中元素的数据结构,可以用数组 let items = [] 接下来声明一些队列可 ...

  7. 【IntelliJ Idea】使用学习

    [IntelliJ Idea]使用学习 转载:https://www.cnblogs.com/yangchongxing/p/10658259.html 目录 ==================== ...

  8. Sql中将datetime转换成字符串的方法(CONVERT())

    语法格式:CONVERT (<data_ type>[ length ], <expression> [, style]) style的含义:style 是将DATATIME ...

  9. JSON在线解析及格式化校验工具 jsonin.com

    JSON在线解析及格式化校验工具 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它使得人们很容易的进行阅读和编写.同时也方便了机器进行解析和生成.它是基 ...

  10. 《Java基础知识》Java接口和抽象类的区别

    抽象类 抽象类必须用 abstract 修饰,子类必须实现抽象类中的抽象方法,如果有未实现的,那么子类也必须用 abstract 修饰.抽象类默认的权限修饰符为 public,可以定义为 public ...