Linux命令:探索神出鬼没的cd命令
Posted Linux微知识
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux命令:探索神出鬼没的cd命令相关的知识,希望对你有一定的参考价值。
在之前的帖子中,我们已经用过很多次cd这个命令了,大家都知道这个命令是用于切换工作路径的,这个命令使用太普遍了,以致于cd这个命令连man手册都说:“nothing appropriate”,即“没有合适的”:
那为什么我们可以正常使用cd命令的呢?到底这些命令在哪里?我们可以使用which命令来查阅下我们熟悉的ls和pwd命令在哪里:
我们可以发现,大部分的命令其实都是在/bin下,在之前的帖子“Linux目录结构:物以类聚,目录以文件来分!”中,我们分析过/bin的确是存放一些常用的命令,但是在上图我们发现cd命令并不在/bin,究竟cd命令在哪里?
其实,cd命令是Linux中的一个内置命令,我们可以通过命令type cd来查看cd究竟是怎么回事:
Linux说:“cd is a shell builtin”,意思是说“cd是Linux系统的shel命令中的一个内置命令”,为什么这个cd命令要做成内置命令?因为cd命令太重要了,就连我们想删除这个命令,也找不到它的文件所在的路径,即使我们故意破坏环境变量在/bin下寻找命令,也能正常使用cd命令。
PATH=/usr/local/arm/5.4.0/usr/bin:/home/ericion/bin:/home/ericion/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
总结一下:
当前PATH环境变量下有:/bin,也就是说系统会在这个目录下寻找Linux的命令,但是我们前面分析出cd命令并不在/bin目录下,所以即使我把环境变量中的/bin目录删除,也不会影响我们正常使用cd命令。
以上是关于Linux命令:探索神出鬼没的cd命令的主要内容,如果未能解决你的问题,请参考以下文章