《LINUX教程:Linux命令类型及执行顺序》要点:
本文介绍了LINUX教程:Linux命令类型及执行顺序,希望对您有用。如果有疑问,可以联系我们。
一、敕令分类
Linux敕令分为两类,具体为内部敕令和外部敕令
内部敕令:
指shell内部集成的敕令,此类敕令无需人为安装,开机后自动运行在内存中,敕令help查看所有内部敕令的详情,如cd、type、echo、time、true等.
外部敕令:
指通过外部介质安装的命令对象包,如通过yum、rpm等方式安装,具体安装路径在$PATH下.
敕令查看:
type查看敕令分类,内部敕令显示 shell相关信息,外部敕令则显示$PATH路径,如下图:
time属于内部敕令,date属于外部敕令.
二、命令执行次序
在命令执行过程中,命令形态主要分为4类:alias别号命令、内部命令、hash缓存命令和外部命令.
实例:echo即是内部命令又是外部命令,以echo为例实验证明其执行次序
1. 将/bin/echo 复制到/usr/local/bin/下,用which -a查看echo的路径($PATH中/usr/local/bin路径优先于/bin,则echo优先使用/usr/local/bin/下的echo)
2.查看内部echo,并封闭内部命令的echo,使用echo命令在hash中形成记录,并查看记录
3. 删除/usr/local/bin下的echo,hash中任然存echo的路径/usr/local/bin,再次使用echo “welcome to xi'an”
结论:执行hash中的敕令优先$PATH中的敕令
4. 开启内部敕令echo,再次执行echo “welcome to xi'an”
结论:阐明内部命令优先于hash缓存命令和外部命令
5. 定义别名alias echo=“hostname”,如果echo 输出是hostname的内容时,则注解alias比内部命令优先
总结:命令执行次序为alias——内部命令——hash缓存——外部命令
三、命令分类及查找根本命令
1. type command 查看是否是内部敕令
2. which -a| --skip-alias command 查看所有包括command的路径|不查看别名的路径
3. enable -n command 封闭内部命令
4. hash -l 显示hash缓存 -d 清楚具体缓存敕令路径 -r 删除所有敕令路径
5. alias 定义别号 ualias取消别号
本文永远更新链接地址:
学习更多LINUX教程,请查看站内专栏,如果有LINUX疑问,可以加QQ交流《LINUX教程:Linux命令类型及执行顺序》。
转载请注明本页网址:
http://www.vephp.com/jiaocheng/8885.html