linux中如何判断是不是shell内置命令?

问题描述

在听linux视频教程时,里面说cd、umask都说shell的内置命令,所以没有路径;
判断方法是用which来查看命令,如果没有路径就是shell内置命令;
视频教程中确实没返回路径,但是我在我的电脑上运行却出现了路径,在/usr/bin/cd

我的系统上CentOS,他们演示的环境也是,为什么会有不一样的效果?

他们的是6的版本,我的是7的版本

阅读 5k
4 个回答

视频真是误导新人,判断是否为内置命令要用 type ,加上 -a 可以查看命令所在路径。

$ type cd
cd is a shell builtin

直接输入type cd就可以知道是不是buildin了

cd,umask属于内建命令。你的cd能显示目录只是说明有一个同名的系统命令存在,这个命令可能行为上与内建命令大部分是一至的。

根据路径来判断,在 bin路径下的就不是内部命令

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题