命令的执行过程
- 系统会判断你输入的命令是否绝对路径,是直接执行
- 如果是相对路径,系统会判断命令是否存在别名,如果存在,执行别名
- 如果命令不存在别名,系统会判断输入的命令是否内置命令,如果是,直接执行
- 如果不是内置命令,系统会查询内存的hash缓存表,如果命令存在缓存,则按照缓存执行
- 如果hash缓存表中没有命令的缓存,系统会从环境变量PATH中的命令路径查询命令的路径进行执行
- 如果PATH变量没有命令的路径,就会报错 command not found
hash 查看当前窗口下所有外部命令的缓存表
选项 :
-d # 从缓存中删除命令
-r # 清空hash缓存表中的所有缓存