当我们想要知道Linux中一个指令的类型时,可以使用type指令。因为在Linux的shell中,有一些指令是shell内嵌的,有一些是外部的指令,当我们想要区分它们时,就可以使用type指令。
使用方式:
type [-tpaP] commandname
选项详解:
- 当不带选项时,type会显示命令是bash内嵌指令还是外部指令
-t:会显示以下几个关键词来表示指令的类型:
alias
:如果commandname是alias
key-word
:如果commandname是shell的保留字
function
:如果commandname是函数
builtin
:如果commandname是shell内置的指令
file
:如果commandname是外部指令(disk file)
- -p(小写):如果
commandname
是外部指令,即type -t commandname
的返回值是file
时,会显示commandname
的完整文件路径名(搜索PATH),如果type -t commandname
的返回值不是file时
,则什么都不返回。 - -P(大写):即使
type -t commandname
的返回值不是file(外部指令)
,也会强制搜索PATH路径,即不论其是什么类型,都会返回完整的文件路径名。 - -a:会在
PATH变量
规定的路径中搜寻所有的commandname
指令,包括alias
,并将其打印出来。
具体应用
type对指令的搜索都是在PATH路径下的,如果指令不在PATH规定的路径下,那么type不会有返回值的。
这是我简单测试得来的,如有错误之处,还望各位小伙伴指出。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。