张三、如花、王婆带你了解Shell命令以及运行原理

2023-12-03 01:52

本文主要是介绍张三、如花、王婆带你了解Shell命令以及运行原理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

文章目录

  • 前言
  • 概述
  • 张三、王婆、如花的故事
  • Shell命令以及运行原理
  • 后记

前言

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

概述

Linux中大部分指令都是文件
用户执行某种功能的时候,不是让操作系统直接执行对应的指令,而是先交给外壳程序。

啊?什么外壳程序?我不懂

在这里插入图片描述

张三、王婆、如花的故事

张三是一个某985双一流大学研究生毕业的码农,人高马大,目前已经就业于某知名公司,还是有所成就的。虽然张三在学业和事业上有所成就,但是不善于和异性聊天。

张二是张三的父亲,对自己的儿子张三感到骄傲。但是,已经是一个26岁的小伙子了,还没有对象,作为父亲感到着急。张三的爹也是一个有头有脸的人物,是这个村的村委书记,在村子里面还是小有名气的。

王婆是这个村里的媒婆,村里方圆十里以内,俊男少女都认识,专为年轻人牵线。

如花是张三的青梅竹马,小时候经常在一起玩,但是两人在初中之后由于学业很少有来往。

小帅也是离如花家附近不远的一个邻居,年龄相仿。

在这里插入图片描述

张三的爹因为张三还没有找对象的事情感到着急,找到村里的媒婆——王婆来介绍。于是,张三的爹就把张三的微信推给了王婆,让王婆给张三介绍。

王婆加上了张三,和张三沟通了一番。张三对自己的青梅竹马如花独有风情,张三表示,自己想和如花交往。张三是一个实打实的理工男,不善于和女生交谈,一和女生交谈,脸红,脸红的夸张。现在这个年代,这样肯定是不行的。张三还表示,希望让王婆来拉近自己和如花之间的距离,希望进一步发展关系。

那么问题来了,为什么张三不自己去找如花??
因为张三不善于和异性交谈,善于和机器打交道,不理解女生的心里。

王婆找到了如花,向如花表达了张三的意思,但是如花表示,自己和张三不合适。

王婆也把如花的意思传给了张三,王婆也劝说张三,不要再找人家了,王婆可给张三介绍别的女生。

但是张三是一个专一的男人,只想要和如花交往,于是便让王婆再去说说。

第二天,王婆又来到了如花的家,但是还没有进家,就看到如花一家和小帅坐在一起吃饭,看着像是一家子,王婆也就没好意思到如花的家里面了。因为大家都知道王婆是一个媒婆,趁现在这个情况,进如花家里面自然是不太好。

王婆自己知道,张三和如花是不可能进一步发展关系的,委婉地和张三说自己可以给张三介绍村里其他的姑娘。

但是张三非要和如花交往,继续让王婆再去如花家说说,这让王婆也没有办法,毕竟人家父亲张二是村委书记。

王婆只能每次都路过如花家里,但是不进去,也不交谈,直接和张三说不可能进一步发展。

话说这事情都过去了这么久,书记家儿子这事还迟迟没有解决,让书记觉得有些难堪。而且,堂堂村里的媒婆,迟迟不能给别人牵线成功,这让王婆的名声也不太好。

于是,王婆在隔壁村,招录实习生,要求是心理学专业,大批大批的实习生来王婆着实习了。

张三每次让王婆去劝劝如花的时候,王婆就让自己的实习生来解决。王婆知道这事成不了,就把这事推给实习生来做,自己便可以去解决有把握的事情。这样一来,王婆的名声也就不会被毁坏,村里的人都认为是别人介绍的。张三的爹来问王婆的话,王婆也就可以把责任推给实习生了。

于是,这件事久久不能摆平…

故事的结尾留给读者自己想象吧,欢迎各位读者评论区发挥想象,帮小编完成后续。

Shell命令以及运行原理

这里的张三相当于用户,王婆相当于外壳程序,如花相当于操作系统

用户想对操作系统执行操作,但是没有办法直接和操作系统进行沟通,于是通过外壳程序。相当于张三不善于和异性沟通,通过王婆来沟通。

当用户执行的操作失败时,外壳程序无法对操作系统执行操作。相当于王婆没办法劝说如花。

外壳程序无法对操作系统执行,操作系统会对外壳程序报错信息。相当于如花的言语和行为向王婆表示自己和张三不合适。

外壳程序对用户进行提示,执行失败。相当于王婆对张三表示不可能发展关系。

此时,相信读者应该理解了外壳程序概念:

什么是外壳程序?
外壳程序是介于用户和操作系统间的软件,是命令行解释器:将使用者的命令翻译给核心(kernel)处理。同时,将核心的处理结果翻译给使用者。

为什么要有外壳程序?
(1)用户不善于直接和操作系统交互;(2)外壳的存在,可以对请求进行合法性检查,变相地保护OS。

外壳程序怎么对OS保护?
是对我们的指令进行解析,解析指令给Linux内核。反馈结果在通过内核运行出结果,通过shell解析给用户。常用的bash就是这个操作,bash也就相当于王婆。

什么是Shell程序?
Shell程序是外壳程序的统称,相当于媒婆,bash是其中一个,相当于其中一个媒婆,即王婆。

后记

张三和如花的故事还没有结束,希望各位读者发挥想象,在评论区发出故事的后续…

在这里插入图片描述

这篇关于张三、如花、王婆带你了解Shell命令以及运行原理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/447650

相关文章

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2

Java的IO模型、Netty原理解析

《Java的IO模型、Netty原理解析》Java的I/O是以流的方式进行数据输入输出的,Java的类库涉及很多领域的IO内容:标准的输入输出,文件的操作、网络上的数据传输流、字符串流、对象流等,这篇... 目录1.什么是IO2.同步与异步、阻塞与非阻塞3.三种IO模型BIO(blocking I/O)NI

一文带你了解SpringBoot中启动参数的各种用法

《一文带你了解SpringBoot中启动参数的各种用法》在使用SpringBoot开发应用时,我们通常需要根据不同的环境或特定需求调整启动参数,那么,SpringBoot提供了哪些方式来配置这些启动参... 目录一、启动参数的常见传递方式二、通过命令行参数传递启动参数三、使用 application.pro

Java终止正在运行的线程的三种方法

《Java终止正在运行的线程的三种方法》停止一个线程意味着在任务处理完任务之前停掉正在做的操作,也就是放弃当前的操作,停止一个线程可以用Thread.stop()方法,但最好不要用它,本文给大家介绍了... 目录前言1. 停止不了的线程2. 判断线程是否停止状态3. 能停止的线程–异常法4. 在沉睡中停止5

一文带你深入了解Python中的GeneratorExit异常处理

《一文带你深入了解Python中的GeneratorExit异常处理》GeneratorExit是Python内置的异常,当生成器或协程被强制关闭时,Python解释器会向其发送这个异常,下面我们来看... 目录GeneratorExit:协程世界的死亡通知书什么是GeneratorExit实际中的问题案例

Linux find 命令完全指南及核心用法

《Linuxfind命令完全指南及核心用法》find是Linux系统最强大的文件搜索工具,支持嵌套遍历、条件筛选、执行动作,下面给大家介绍Linuxfind命令完全指南,感兴趣的朋友一起看看吧... 目录一、基础搜索模式1. 按文件名搜索(精确/模糊匹配)2. 排除指定目录/文件二、根据文件类型筛选三、时间

使用mvn deploy命令上传jar包的实现

《使用mvndeploy命令上传jar包的实现》本文介绍了使用mvndeploy:deploy-file命令将本地仓库中的JAR包重新发布到Maven私服,文中通过示例代码介绍的非常详细,对大家的学... 目录一、背景二、环境三、配置nexus上传账号四、执行deploy命令上传包1. 首先需要把本地仓中要

JAVA封装多线程实现的方式及原理

《JAVA封装多线程实现的方式及原理》:本文主要介绍Java中封装多线程的原理和常见方式,通过封装可以简化多线程的使用,提高安全性,并增强代码的可维护性和可扩展性,需要的朋友可以参考下... 目录前言一、封装的目标二、常见的封装方式及原理总结前言在 Java 中,封装多线程的原理主要围绕着将多线程相关的操

kotlin中的模块化结构组件及工作原理

《kotlin中的模块化结构组件及工作原理》本文介绍了Kotlin中模块化结构组件,包括ViewModel、LiveData、Room和Navigation的工作原理和基础使用,本文通过实例代码给大家... 目录ViewModel 工作原理LiveData 工作原理Room 工作原理Navigation 工

Java的volatile和sychronized底层实现原理解析

《Java的volatile和sychronized底层实现原理解析》文章详细介绍了Java中的synchronized和volatile关键字的底层实现原理,包括字节码层面、JVM层面的实现细节,以... 目录1. 概览2. Synchronized2.1 字节码层面2.2 JVM层面2.2.1 ente