文章目录
一、 $- 和 himBH
:~> echo $-
himBH
$-
记录的是当前配置打开的 shell 选项,而 himBH
是其默认值。
himBH
每个字母都代表了一个 shell 选项,具体如下:
h - hashall
i - interactive-comments
m - monitor
B - braceexpand
H- history
可以通过 set -o 查看来确认打开状态:
:~> set -o | grep -w on
braceexpand on
hashall on
history on
interactive-comments on
monitor on
那么, himBH
每一项,具体表示什么意思呢?
二、 himBH 简析
1、h - hashall
bash 的 hash 功能,可以实现让某些 command 和 具体路径 绑定在一起。
比如:
:~> hash -p /tmp/fakedate date
:~> hash -l | grep fakedate
builtin hash -p /tmp/fakedate date
:~> date
-bash: /tmp/fakedate: No such file or directory
:~> set +h
:~> date
Sun Jan 19 15:43:18 CST 2020
:~> set -h
:~> date
-bash: /tmp/fakedate: No such file or directory
:~> hash -d date
:~> date
Sun Jan 19 15:43:53 CST 2020
关于 hash 命令的更多使用介绍,可戳