内置命令在系统启动时就调入内存,是常驻内存的,所以执行效率高。而外部命令是系统的软件功能,用户需要时才从硬盘中读入内存。
外部命令
外部命令也称为文件系统命令,是bash shell之外的程序,也并不是shell的一部分。外部命令一般位于/bin、/usr/bin、/sbin或/usr/sbin中。外部命令是Linux系统中的实用程序部分,因为实用程序的功能通常都比较强大,所以其包含的程序量也会很大,在系统加载时并不随系统一起被加载到内存中,而是在需要时才将其调用内存。
通常外部命令的实体并不包含在shell中,但是其命令执行过程是由shell程序控制的。shell程序管理外部命令执行的路径查找、加载存放,并控制命令的执行。外部命令是在bash之外额外安装的,通常放在/bin,/usr/bin,/sbin,/usr/bin……等等。可通过“echo$PATH”命令查看外部命令的存储路径,比如:ls、vi等。
内置命令
内部命令实际上是shell程序的一部分,其中包含的是一些比较简单的Linux系统命令,这些命令由shell程序识别并在shell程序内部完成运行,通常在Linux系统加载运行时shell就被加载并驻留在系统内存中。
内部命令是写在bash源码里面的,其执行速度比外部命令快,因为解析内部命令
Linux中的命令分为内部命令和外部命令。内部命令作为shell的一部分常驻内存,执行效率高,如`exit`, `history`, `cd`, `echo`等;外部命令如`ls`, `vi`,在需要时从硬盘读入内存,执行速度相对较慢。`type`命令可用来判断命令类型,`enable`可以查看和启用内部命令。内部命令调用快速,不受环境变量影响,而外部命令则需要通过`PATH`查找。"
79096927,5655720,深入理解ES6异步:async/await实战与并发优化,"['前端开发', 'JavaScript', 'ES6', 'Vue.js', '异步编程']
订阅专栏 解锁全文
1132

被折叠的 条评论
为什么被折叠?



