首页 > 技术文章 > shell中的type命令

chaoguo1234 2016-07-31 17:51 原文

type [-aftpP] name [name,...]

-a 打印name的所有可能情况,比如type -a ls,会打印ls is aliased to 'ls --color=auto'和ls is /bin/ls

-f 不会去查找function

-t 打印alias,keyword,function,built-in,file这5种类型

-p 如果 type -t name输出file,那么会打印name所在路径

-P 不管type -t name是不是输出file,都会去搜索name所在路径,比如type -P ls,尽管type -t ls打印的是alias(因为alias的优先级高于file),但是仍然会搜索出ls所在的路径/bin/ls

 

如果type不加任何选项,直接加1个或者多个name,那么会依次打印这些name的类型。只有所有name的类型都能成功打印,type才返回成功,否则,只要任何一个name类型无法打印,那么就返回失败。

推荐阅读