shell——内建命令

shell——内建命令,第1张

外部命令有时候也被称为文件系统命令,是存在bash shell之外的程序。它们并不是shell程序的一部分。外部命令通常位于/bin, /usr/bin, /sbin /usr/sbin中,而内建命令都是和shell编译成一体的程序,作为shell工具的组成部分存在。不需要借助外部程序文件来运行。

可以通过type命令查看命令是否是内建命令或者外部命令,如

当外部命令被执行时,会创建一个子进程。这种 *** 作被称为衍生(forking)。外部命令ps很方便显示出它的父进程以及自己所对应的衍生子进程。而内建命令不需要打开程序文件,内建命令的执行速度要更快,效率更高。

注意:有些命令有多种实现。例如echo和pwd既有内建命令也有外部命令。

有两个比较好用的内建命令history 和 alias

shell会自动记录shell运行的历史记录,history命令可以查看,使用 ! 和数字可以调用相应编号的历史命令

alias命令可以给较长的命令取别名,方便使用。

shell脚本是shell的一种扩展功能,也就是shell会根据你所写的脚本一条一条的去执行,C写的程序是直接给CPU执行的。一般来说做一些简单功能,特别是和shell有关的。我们会用shell脚本,如系统环境的设定,开机后执行系统的初始化等。做一些功能复杂的,特别人用户自已所想到的功能时会用C语。另外如果程序执行是要用到root权限是最好也用C语。

(1)Shell脚本与Windows/Dos下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。但是它比Windows下的批处理更强大,比用其他编程程序编辑的程序效率更高,它使用了Linux/Unix下的命令。

(2)C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

简单列举几点吧:

1)shell变量没有固定类型,你可以给一个变量一会儿赋值为一个整数,一会儿赋值为一个字符串,都没关系;c程序变量需要在定义时明确指定类型,不同类型间需要做类型转换。

2)由于shell程序是逐行按次序解释执行的,函数定义必须写在函数调用的前面;而C程序不必,在文件开头加上函数申明即可。

3)相同的地方也有。作为编程语言,都有逻辑控制结构,如if语句、switch语句、while循环语句等。都有退出状态返回值。

总之,一个是脚本语言,一个是高级语言;一个是解释执行,一个是编译后执行。有天壤之别,没法比。

以上就是关于shell——内建命令全部的内容,包括:shell——内建命令、在Linux C语言下,可执行的Shell脚本文件与编译之后的C可执行文件的区别有哪些 、试比较Shell程序和C程序语法上的异同等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9824294.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存