一、历史命令与命令补全 history

1、历史命令查看 history

linux会把我们所有写过的命令都保存到计算机中,使用history可以看到以前写过的所有命令。

语法:history [后缀] [历史命令保存文件]

后缀:

  • -c:清空历史命令(包括文件和缓存区的全部命令)
  • -w:把缓存中的历史命令写入历史命令保存文件(可指定文件,默认在~/.bash_hisroty)

注:

  1. 历史命令不会马上写入文件,而是先放在缓存区,在用户退出或者使用后缀-w后才会写入历史命令保存文件。
  2. 每个用户的历史命令是单独保存的。
  3. 历史命令默认保存1000条,可以在环境变量配置文件/etc/profile中进行修改

2、历史命令调用

  • 使用上,下箭头:调用以前的历史命令
  • 使用"!n":重复执行第n条历史命令(使用history可以查看历史命令所在的序号)
  • 使用"!!":重复执行上一条命令
  • 使用"!字串":重复执行最后一条以该字串开头的命令

上下箭头、!字串 这几个都比较常用

二、命令与文件名补全 tab

在Bash中,按”Tab“可以进行命令与文件名字补全

按两下tab键的情况:

显示以该字串开头的全部命令或文件。

比如:你想用useradd命令,输入user后按一次tab,无效,因为有多个命令都是以user开头。这时再按一次tab,会列出以user开头的全部命令。

三、命令别名

1、命令执行时的顺序

  1. 绝对路径或相对路径的命令
  2. 别名
  3. Shell的内部命令(如:cd)
  4. 按照$PATH环境变量定义的目录查找到的第一个命令

2、命令别名(重启失效) alias

为了方便自己使用命令,我们可以用给命令取别名

语法:alias [别名]='[原命令]'

直接输入alias可以查看当前设置的全部别名

注:

  1. 若设置的别名是已有环境变量定义的命令,则该已有环境变量定义命令会被覆盖,(上面的优先级)比如设置vim的别名是vi后,vi这个命令就被覆盖了。
  2. 这种方式定义的别名在系统重启后就失效

例如:

  • 查看当前系统设置的全部别名——直接输入alias
这些都是系统自带设置的别名
  • 设置vim的别名为vi—— alias vi='vim'

3、命令别名(永久生效)

alias的别名替换在重启后就失效,那如何让别名替换永久生效呢?

—— 写入 /root/.bashrc

查看这个文件:vim /root/.bashrc

按照这个格式写入我们想要的别名即可,如:

4、删除alias定义的别名 unalias

语法: unalias [别名]

四、Bash常用快捷键

注:只是为了方便看,用的时候字母不需要大写