最新公告
  • 欢迎您光临码农资源网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!加入我们
  • Linux命令有几种类型

    linux命令有2种类型:1、内部命令(shell命令),由shell程序识别并在shell程序内部完成运行;其在系统启动时就调入内存,是常驻内存的,所以执行效率高。2、外部命令(文件系统命令),是bash shell之外的程序,是系统的软件功能,用户需要时才从硬盘中读入内存。

    Linux命令有几种类型

    本教程操作环境:linux7.3系统、Dell G3电脑。

    Linux命令的2种类型

    Linux 命令有内部命令(内建命令)和外部命令之分,内部命令和外部命令功能基本相同,但也有些细微差别。

    内置命令在系统启动时就调入内存,是常驻内存的,所以执行效率高。而外部命令是系统的软件功能,用户需要时才从硬盘中读入内存。

    外部命令

    外部命令也称为文件系统命令,是 bash shell 之外的程序,它并不是 shell 的一部分。外部命令一般位于 /bin、/usr/bin、/sbin 或 /usr/sbin 中。外部命令是 Linux 系统中的实用程序部分,因为实用程序的功能通常都比较强大,所以其包含的程序量也会很大,在系统加载时并不随系统一起被加载到内存中,而是在需要时才将其调用内存。

    通常外部命令的实体并不包含在 shell 中,但是其命令执行过程是由 shell 程序控制的。shell 程序管理外部命令执行的路径查找、加载存放,并控制命令的执行。外部命令是在 bash 之外额外安装的,通常放在 /bin,/usr/bin,/sbin,/usr/sbin… 等等。可通过 “echo

    $PATH” 命令查看外部命令的存储路径,比如:ls、vi 等。

    内置命令

    内部命令实际上是 shell 程序的一部分,其中包含的是一些比较简单的 Linux 系统命令,这些命令由 shell 程序识别并在 shell 程序内部完成运行,通常在 Linux 系统加载运行时 shell 就被加载并驻留在系统内存中。

    内部命令是写在 bash 源码里面的,其执行速度比外部命令快,因为解析内部命令 shell 不需要创建子进程。比如:exit,history,cd,echo 等。

    说明

    其中,pwd 命令是一个特殊的命令,其有两个版本,一个版本是内置命令,一个版本是外部命令。

    总结

    外部命令会创建出一个包含全新环境的子进程,而内置命令不会。相比之下,外部命令的使用成本更高,所以内置命令更高效,不会受到环境变化的影响。

    区分内置命令与外部命令

    语法

    type command

    案例

    我们使用 type 命令,查看 cd 命令是内部命令还是外部命令,具体命令如下:

    type cd

    运行后,终端输出如下:

    1.png

    我们看到,输出了 cd 是一个内置命令,现在,我们再次使用 type 命令,查看 ps 命令,是内置命令还是外部命令,具体命令如下:

    type ps

    运行后,终端输出如下:

    2.png

    我们看到,输出了 ps 命令的位置,即,表明 ps 命令是一个外部命令。

    相关推荐:《Linux视频教程

    想要了解更多内容,请持续关注码农资源网,一起探索发现编程世界的无限可能!
    本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
    如有侵权请发送邮件至1943759704@qq.com删除

    码农资源网 » Linux命令有几种类型
    • 7会员总数(位)
    • 25846资源总数(个)
    • 0本周发布(个)
    • 0 今日发布(个)
    • 293稳定运行(天)

    提供最优质的资源集合

    立即查看 了解详情