linux中which命令用于脚本文件的查找, 注意是脚本文件,或者说可执行文件比如man, ls, ifconfig 等文件。
使用格式为which [-a] command
比如我要查找ifconfig这个文件在哪
他就会显示出ls文件的位置, 我们查找man
甚至我们自己查找自己
怎么回事儿? 出现了两个,也就是多了一个alias, 不要慌,其实alias就是所谓的命令别名, 如果你熟悉ls -l和ll 这俩命令的关系的话就清楚了, 我们查找一下ls试试
会看到也会有一个alias,它就是用来给一组命令起别名,来做简化的,比如ls -l简化为ll
输入alias回车就可以看到
which这个命令呢是根据环境变量里边的路径去搜索的, 查找的也只是可执行文件而已, 他还有一个可选参数-a,加上他可以列出所有的可以找到的同名执行文件。
但是我们which history就找不到, 那是因为history这个命令是bash的内置命令, 而which是通过环境变量路径(PATH)去搜索的, 找不到也不难理解,不过可以通过type这个命令找到他。