bash功能特性二 命令别名和历史命令

一、历史命令

    bash提供存储历史命令的功能,下面来详细介绍一下。

    1、history命令

        命令格式:history [options] 

            options:

                不带参数选项:显示所有使用过的命令;

                #(数字):显示最近使用过的#条命令;

                -c:清除目前shell中所有的历史命令;

                -d #:清除条#条命令;

                -r:将历史命令配置文件(默认~/.bash_history)中的内容读到目前的shell中;

                -a [FILE]:将新增的历史命令导入到FILE中,不指定则保存到~/.bash_history中;

                -w:将目前的所有的历史命令写入到历史命令配置文件中;

        (1)查看最近10条历史命令方法一;

1.png

        (2)查看最近10条历史命令方法二;

2.png

        (3)将历史命令写入到~/.bash_history中;

         先来查一下文件中的内容;

3.png

         更新此文件中的内容;

4.png          从上面的结果可以看到最后面的命令已被替换成最新的了,而且我们也发现一个问题,~/.bash_history文件最多只能存储1000条记录; 其实我们可以根据需要来修改这个值。

    2、历史命令的相关变量

        (1)用户退出时的持久保存位置

        从上面的例子可知默认的保存位置为~/.bash_history,可以通过修改环境变量HISTFILE更换;

5.png

        (2)文件中可以保存的最大条目

         环境变量:HISTFILESIZE

6.png

         (3) 命令保存的最大条目

         环境变量:HISTSIZE

7.png

         (4) 命令显示控制

         环境变量:HISTCONTROL

            变量值的含义:

                ignoredups:忽略重复的命令,连续的相同命令才会为重复

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

                ignoreboth:以上二者同时生效

6.png

7.png

    3、bash调用历史命令列表中的命令

        !#:执行命令历史中的第#条命令

        !!:执行上一条

        !string:执行命令历史中最近一次以string开头的命令

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

           按ESC松开后按“.” :功能同上

8.png

二、命令别名

    bash支持为命令设置别名,以达到方便输入和记忆的目的。

    1、设置别名:alias命令

         alias命令用法比较简单,下面直接举例说明:

9.png10.png

    使用命令设置的别名并不能永久生效,可以在~/.bashrc文件中设置别名;

11.png

    2、撤消别名:unalias命令  

        -a:撤消所有别名

12.png

    同样,命令行中并不能真正撤消别名,还需要修改配置文件;

12.png1.png

    3、当命令别名与命令本身相同,如何才能不使用别名的定义来执行命令:

13.png

14.png       


原创文章,作者:petmaster,如若转载,请注明出处:http://www.178linux.com/3246

(0)
上一篇 2015-04-20 22:01
下一篇 2015-04-21 16:26

相关推荐

  • 字段分隔符和迭代器

        内部字段分隔符(Internal Field Separator)是shell脚本编程中的一个重要概念。在处理文本数据时,有很大的作用。内部字段分隔符是用于特定用途的定界符,IFS是存储定界符的环境变量,它是当前shell环境中使用的默认定界符字符串。     例一:da…

    Linux干货 2016-08-15
  • 安装命令及源码安装

    rpm命令  –q:查询 -qa:查询系统内所有已安装的包 -qf:查询文件来自于那个安装包 -ql:安装包内的文件 -qp:与其他命令配合可以查询未安装包的信息,但要跟完整的安装包名 -qi:查看报的详细信息 -qc:查询程序的配置文件 -qd:查询程序的文档 -qR:查询安装包依赖的程序 –scripts:查看安装包内的脚本 -q …

    Linux干货 2016-08-26
  • Linux磁盘及文件系统管理

    Linux磁盘及文件系统管理 创建文件系统      mkfs.ext#     .xfs mke2fs 功能比mkfs强大的多 检测及修复     fsck      …

    Linux干货 2016-08-30
  • Linux文档的压缩与打包

    Linux文档的压缩与打包 概述 compress和uncompress gzip压缩工具 bzip2压缩工具 zip压缩工具 tar压缩工具 cpio压缩工具(主要用来备份还原) Linux文档的压缩与打包 概述 本章将介绍Linux系统中的压缩和解压缩的工具,以及归档工具(tar,cpio) compress/uncompress:   &nb…

    Linux干货 2016-09-06
  • Linux网络属性配置—iproute命令家族

    ip命令: show / manipulate routing, devices, policy routing and tunnels ip [ OPTIONS ] OBJECT { COMMAND | help } OBJECT := { link | addr | route | netns  } ip  OBJECT: ip li…

    Linux干货 2016-12-04
  • shell脚本清空系统message日志

      1 #/bin/bash   2 #此脚本用来清空系统message日志文件   3 #author:wyf date:16/10/30   4 LOG_DIR=/var/log   5 ROOT…

    Linux干货 2016-10-30

评论列表(3条)

  • stanley
    stanley 2015-04-22 21:32

    哇哦,提升飞速啊,赞

  • stanley
    stanley 2015-04-22 21:36

    非常仔细,练习的一些习题也看得出很有心进行。 从业务角度考虑,可以尝试实现:1. 如何实现history记录命令执行时间 2. 实在history记录永久保存

    • petmaster
      petmaster 2015-04-22 22:47

      @stanley好的,回头我搞一下这两个实际应用