您的位置:首页 > 运维架构 > Shell

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

2015-05-20 09:38 459 查看

一、历史命令

bash提供存储历史命令的功能,下面来详细介绍一下。 1、history命令 命令格式:history [options] options: 不带参数选项:显示所有使用过的命令; #(数字):显示最近使用过的#条命令; -c:清除目前shell中所有的历史命令; -d #:清除条#条命令;
-r:将历史命令配置文件(默认~/.bash_history)中的内容读到目前的shell中; -a [FILE]:将新增的历史命令导入到FILE中,不指定则保存到~/.bash_history中; -w:将目前的所有的历史命令写入到历史命令配置文件中; (1)查看最近10条历史命令方法一;


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


(3)将历史命令写入到~/.bash_history中;
先来查一下文件中的内容;


更新此文件中的内容;

从上面的结果可以看到最后面的命令已被替换成最新的了,而且我们也发现一个问题,~/.bash_history文件最多只能存储1000条记录; 其实我们可以根据需要来修改这个值。 2、历史命令的相关变量 (1)用户退出时的持久保存位置 从上面的例子可知默认的保存位置为~/.bash_history,可以通过修改环境变量HISTFILE更换;

(2)文件中可以保存的最大条目 环境变量:HISTFILESIZE

(3) 命令保存的最大条目 环境变量:HISTSIZE

(4) 命令显示控制 环境变量:HISTCONTROL 变量值的含义:
ignoredups:忽略重复的命令,连续的相同命令才会为重复 ignorespace:忽略以空白字符打头的命令 ignoreboth:以上二者同时生效



3、bash调用历史命令列表中的命令 !#:执行命令历史中的第#条命令 !!:执行上一条 !string:执行命令历史中最近一次以string开头的命令 !$:调用上一条命令最后一个参数 按ESC松开后按“.” :功能同上

二、命令别名

bash支持为命令设置别名,以达到方便输入和记忆的目的。
1、设置别名:alias命令
alias命令用法比较简单,下面直接举例说明:



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

2、撤消别名:unalias命令 -a:撤消所有别名

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



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


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  history 命令别名