网站建设哪里找,网络游戏投诉找哪个部门,手机做兼职的网站设计,如何修改wordpress头部信息Shell 简介
图形界面和命令行的目的一样#xff0c;都是让用户控制计算机。真正控制计算机硬件#xff08;CPU、内存、显示器等#xff09;的只有操作系统内核#xff08;Kernel#xff09;。图形界面和命令行只是架设在用户和内核之间的一座桥梁。Shell 是一个应用程序都是让用户控制计算机。真正控制计算机硬件CPU、内存、显示器等的只有操作系统内核Kernel。图形界面和命令行只是架设在用户和内核之间的一座桥梁。Shell 是一个应用程序连接用户和 Linux 内核让用户能够高效、安全、低成本地使用 Linux 内核。Shell 不是内核的一部分它是在内核的基础上编写的一个应用程序和其它软件没有什么区别。Shell 有它的特殊性: 开机立马启动不启动 Shell用户没法使用 Linux。Shell 熟练度反映Linux掌握程度运维工程师、网络管理员、程序员都应该学习 Shell。Shell 是解释型语言或者脚本语言Script。编译型语言速度快、硬件要求低、保密性好适合开发操作系统、大型应用程序、数据库等。脚本语言则灵活、部署容易、跨平台性好非常适合 Web 开发以及小工具的制作。Shell 脚本很适合处理纯文本类型的数据而 Linux 中几乎所有的配置文件、日志文件如 NFS、Rsync、Httpd、Nginx、MySQL 等以及绝大多数的启动文件都是纯文本类型的文件。Shell 脚本是实现自动管理以及自动化运维必备工具。Linux管理或运维熟练编写Shell 脚本提升运维工作效率减少重复劳动
Shell 是如何连接用户和内核的 Shell 接收用户输入的命令并进行处理后再将结果反馈给用户比如输出到显示器、写入到文件等 Shell 程序本身的功能是很弱的比如文件操作、输入输出、进程管理等都得依赖内核。 运行命令大部分情况下 Shell 都会去调用内核暴露出来的接口这就是在使用内核 调用过程被 Shell 隐藏了起来它只是在背后默默进行我们看不到而已。 接口其实就是一个一个的函数使用内核就是调用这些函数除了函数你没有别的途径使用内核。
举例说明Shell运行过程 我们都知道在 Shell 中输入cat log.txt命令就可以查看 log.txt 文件中的内容然而log.txt 放在磁盘的哪个位置分成了几个数据块在哪里开始在哪里终止如何操作探头读取它这些底层细节 Shell 统统不知道的 它只能去调用内核提供的 open() 和 read() 函数告诉内核我要读取 log.txt 文件请帮助我然后内核按照 Shell 的命令去读取文件并将读取到的文件内容交给 Shell最后再由 Shell 呈现给用户其实呈现到显示器上还得依赖内核。整个过程中 Shell 就是一个中介者它在用户和内核之间“倒卖”数据只是用户不可见。