linux操作系统中shell和bash

目录

shell命令以及运行原理

为什么不能直接使用kernel?

总的来说:


shell命令以及运行原理

Linux严格意义上说的是一个操作系统,称之为"核心(kernel )" ,但我们一般用户,不能直接使用kernel。 而是通过kernel的"外壳"程序,也就是所谓的shell,来与kernel沟通。

为什么不能直接使用kernel?

1.执行命令和程序: 通过Shell,用户可以直接输入命令并执行各种操作,如运行程序、管理文件、配置系统等。Shell接受用户的输入,解释并执行相应的命令或程序。

2.脚本和自动化 :Shell提供了编写脚本的能力,可以将多个命令组合在一起,形成一个脚本文件。脚本可以用于自动化任务、批量操作和系统管理等。用户可以编写脚本来执行一系列操作,从而减少手动操作的工作量。

3.系统配置和管理 :Shell提供了管理系统配置和资源的功能。用户可以使用Shell来修改系统设置、安装软件、管理用户和权限等。通过命令行界面,系统管理员可以快速而灵活地完成各种系统管理任务。

4.强大的命令行工具 :Linux提供了丰富的命令行工具集,如grep、awk、sed等,这些工具可以通过Shell来调用和组合。Shell提供了管道和重定向等功能,使用户能够方便地对命令输出进行处理和重定向。

5.可编程性和可扩展性:Shell本身是一种脚本语言,并且支持变量、条件语句、循环等基本编程结构。用户可以编写复杂的脚本程序,实现自定义的功能和扩展。此外,还可以通过创建自定义命令、函数和别名等方式来扩展Shell的功能。

从技术角度,Shell的最简单定义:命令行解释器(command Interpreter)

主要功能:将使用者的命令翻译给核心(kernel)处理。 同时,将核心的处理结果翻译给使用者。

总的来说:

对比windows GUI,我们操作windows 不是直接操作windows内核,而是通过图形接口,点击,从而完成我们的 操作(比如进入D盘的操作,我们通常是双击D盘盘符.或者运行起来一个应用程序)。

shell 对于Linux,有相同的作用,主要是对我们的指令进行解析,解析指令给Linux内核。反馈结果在通过内核运 行出结果,通过shell解析给用户。

相关推荐
iteye_993926 分钟前
让 3 个线程串行的几种方式
java·linux
不想学习\??!1 小时前
STM32-外部中断
stm32·单片机·嵌入式硬件
渡我白衣1 小时前
Linux操作系统:再谈虚拟地址空间
linux
阿巴~阿巴~1 小时前
Linux 第一个系统程序 - 进度条
linux·服务器·bash
不想学习\??!1 小时前
STM32-定时器
stm32·单片机·嵌入式硬件
dpxiaolong1 小时前
物联网和互联网的区别by deep
物联网
DIY机器人工房1 小时前
代码详细注释:通过stat()和lstat()系统调用获取文件的详细属性信息
linux·嵌入式
LIN-JUN-WEI2 小时前
[ESP32]VSCODE+ESP-IDF环境搭建及blink例程尝试(win10 win11均配置成功)
c语言·开发语言·ide·vscode·单片机·学习·编辑器
Sui_Network2 小时前
tBTC 现已上线 Sui,带来 5 亿美元的比特币流动性
人工智能·物联网·web3·区块链·量子计算
望获linux2 小时前
【Linux基础知识系列】第四十三篇 - 基础正则表达式与 grep/sed
linux·运维·服务器·开发语言·前端·操作系统·嵌入式软件