news 2026/7/11 0:50:36

Linux :指令收尾!从 “会敲” 到 “懂原理”,Shell 和内核的交互秘密都在这

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux :指令收尾!从 “会敲” 到 “懂原理”,Shell 和内核的交互秘密都在这

一. 基础指令首尾与总结

1.1 文件压缩与远程传输指令

1.1.1 tar:文件归档与压缩利器

功能:打包/解包,不打开它,直接看内容
参数组合:(这里需要注意 -f后不能再加别的参数)

实际案例

# ================================================== # 示例 1: 使用 tar -czf 打包并压缩目录 (不显示过程) # ================================================== # 创建测试目录和文件 [root@VM-0-3-centos lesson5]# mkdir -p test_dir [root@VM-0-3-centos lesson5]# echo "测试文件1" > test_dir/file1.txt [root@VM-0-3-centos lesson5]# echo "测试文件2" > test_dir/file2.txt [root@VM-0-3-centos lesson5]# ls ./test_dir file1.txt file2.txt # 打包并压缩 test_dir 目录为 archive.tgz (-c:创建 -z:gzip压缩 -f:指定文件名) [root@VM-0-3-centos lesson5]# tar -czf archive.tgz test_dir [root@VM-0-3-centos lesson5]# ls archive.tgz test_dir # ================================================== # 示例 2: 使用 tar -xzf 解压缩包 (不显示过程) # ================================================== # 先删除原目录 [root@VM-0-3-centos lesson5]# rm -rf test_dir [root@VM-0-3-centos lesson5]# ls archive.tgz # 解压 archive.tgz (-x:解压 -z:识别gzip压缩 -f:指定压缩包) [root@VM-0-3-centos lesson5]# tar -xzf archive.tgz [root@VM-0-3-centos lesson5]# ls archive.tgz test_dir [root@VM-0-3-centos lesson5]# ls -l test_dir total 8 -rw-r--r-- 1 root root 14 Oct 16 10:28 file1.txt -rw-r--r-- 1 root root 14 Oct 16 10:28 file2.txt # ================================================== # 示例 3: 使用 tar -xzf -C 解压到指定目录 # ================================================== # 创建目标目录 [root@VM-0-3-centos lesson5]# mkdir -p target_dir [root@VM-0-3-centos lesson5]# ls archive.tgz target_dir test_dir # 解压到指定目录 target_dir (-C:指定解压路径) [root@VM-0-3-centos lesson5]# tar -xzf archive.tgz -C target_dir [root@VM-0-3-centos lesson5]# ls ./target_dir test_dir # ================================================== # 示例 4: 使用 tar -cvzf 打包压缩并显示过程 # ================================================== # -v:显示详细过程 (verbose) [root@VM-0-3-centos lesson5]# tar -cvzf visible__archive.tgz test_dir test_dir/ test_dir/file2.txt test_dir/file1.txt [root@VM-0-3-centos lesson5]# ls archive.tgz target_dir test_dir visible__archive.tgz # ================================================== # 示例 5: 使用 tar -xvzf 解压并显示过程 # ================================================== # 清理已经存在的测试文件 [root@VM-0-3-centos lesson5]# rm -rf test_dir # -v:显示解压的每个文件 [root@VM-0-3-centos lesson5]# tar -xvzf visible__archive.tgz test_dir/ test_dir/file2.txt test_dir/file1.txt [root@VM-0-3-centos lesson5]# ls archive.tgz target_dir test_dir visible__archive.tgz # ================================================== #补充: 在任意 tar 命令末尾加 &, 例如: # ================================================== tar -czf bigarchive.tar.gz /path/to/large_dir & # 后台打包 tar -xzf bigarchive.tar.gz -C /target & # 后台解压 # 所以我们大部分时候也可以不用v
1.1.2 scp:跨机文件传输工具

功能scp基于 SSH 协议实现远程文件拷贝,无需手动登录即可传输,适合服务器间文件同步

1.1.3 bc:交互式计算器工具

功能bc解决了 Linux 终端默认不支持浮点运算的问题,是简单计算的高效工具

实际案例

# 基础使用 [root@VM-0-3-centos lesson5]# bc bc 1.06.95 Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc. This is free software with ABSOLUTELY NO WARRANTY. For details type `warranty'. 2+5 7 2*5 10 5/2 2 5-3 2 quit #结合管道 [root@VM-0-3-centos lesson5]# echo "1+2+3+4+5"|bc 15

1.2 面试题讲解(附带两个指令)

面试题
1.你的计算机体系结构是什么?
2.如何查看你的 Linux 版本?
3.如何查看你的具体系统发行版?

1.3 常用热键

热键组合功能描述
Ctrl+C强制终止当前运行的程序或进程,常用于中断终端中正在执行的命令(如ping测试、长时间运行的脚本等)。
Ctrl+R快速搜索历史指令,输入关键字后会匹配最近执行过的含该关键字的指令,方便快速重复执行或编辑历史命令。
Ctrl+D等效于exit命令,可用于退出当前 Shell 会话(如远程登录后退出服务器),也可在输入模式中表示“输入结束”(如cat命令中输入内容后按此键结束输入)。
Tab自动补全指令或路径,输入指令前几个字符或路径前几个部分时,按此键会自动补全为完整的指令或路径,减少拼写错误,提升操作效率。

补充一个关机指令shutdown

语法shutdown [选项]

常见选项

以下命令作为扩展:

二. Shell 与内核交互原理:拆解 “指令生效” 的关键环节

2.1 核心原理解析

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

从技术角度:shell的最简单定义,命令行解释器主要包含:

2.2 核心角色定位:Shell 是 “翻译官”,内核是 “执行者”

以目前的知识储备,我们可能无法很好的理解,那么接下来博主将通过一个故事带大家感性理解一下先。

故事阶段一:在一个村子里,老王是村长,他的儿子小王事业有成回到家乡。老王催小王找对象,但小王不擅长与女孩交流。于是,老王请来村里有名的媒婆——王婆。王婆到小王家询问他的心意,小王说:“我喜欢隔壁的如花。”王婆便去如花家说媒。如花表示不认识小王,王婆提醒:“他是你小学同学呀。”如花想了想,还是拒绝了。王婆只好回去告诉小王。

阶段一理解

故事阶段二:小王不死心,请王婆再去争取。王婆走到如花家附近,看见如花正和隔壁的小帅及家人一起吃饭,顿时明白如花已有对象。王婆直接返回,告诉小王此事不可为。

阶段二理解

故事阶段三:小王仍不放弃,王婆本要拒绝,却遇见老王,碍于情面只好答应。但她担心事情办不成会砸招牌,于是想出一个办法:成立“王婆婚介公司”,招聘实习生去执行任务。成功了是王婆指导有方,失败了也无妨,换一个实习生再去试试就是。

阶段三理解

✅ 整体总结

王婆是Bash,媒婆是Shell——Shell是命令行界面的统称,Bash是其中一种具体实现。

通过这个故事,我们形象地理解了用户-Shell-内核之间的关系:Shell作为桥梁,既传递指令,也提供保护,还能通过子进程机制增强系统稳定性。内核才是真正的力量中心,而Shell只是我们与它对话的窗口。

2.3 Shell与内核交互过程图解(对应上面的故事)

阶段一:正常命令执行流程

┌─────────┐ 请求 ┌─────────┐ 传递 ┌─────────┐ │ 小王 │ ────────> │ 王婆 │ ────────> │ 如花 │ │ (用户) │ │ (Shell) │ │ (内核) │ └─────────┘ └─────────┘ └─────────┘ │ │ │ │ "喜欢如花" │ 解析命令 │ 处理请求 │ │ │ │ │ │ │ ←──────────────── ──────────────────── │ │ 反馈结果(拒绝) │

关键理解:用户不直接操作内核,需要通过Shell中介

阶段二:Shell拦截非法请求

┌─────────┐ 再次请求 ┌─────────┐ │ 小王 │ ────────> │ 王婆 │ │ (用户) │ │ (Shell) │ └─────────┘ └─────────┘ │ │ 检测到异常情况 │ (如花已有对象) │ ┌─────┴─────┐ │ 拒绝执行 │ │ 保护内核 │ └─────┬─────┘ │ │ ←────────────────── │ │ 直接返回拒绝 │

关键理解:Shell能在传递前拦截危险请求,保护系统

阶段三:创建子进程执行任务

┌─────────┐ 坚持请求 ┌─────────┐ │ 小王 │ ────────> │ 王婆 │ │ (用户) │ │ (Shell) │ └─────────┘ └─────────┘ │ │ 创建子进程 ┌───────────┴───────────┐ │ │ ┌─────┐ ┌─────┐ │实习生│ │实习生│ │(子进│ │(子进│ │ 程) │ │ 程) │ └─────┘ └─────┘ │ │ │ 尝试执行 │ 备份方案 │ │ ┌───┴───┐ ┌───┴───┐ │成功/失败│ │成功/失败│ └───┬───┘ └───┬───┘ └─────────┬─────────────┘ │ │ ←────────────── │ │ 汇总结果 │

关键理解:通过子进程机制,Shell本身不会崩溃

整体架构对比

现实世界比喻: Linux系统对应: ┌─────────────────┐ ┌─────────────────┐ │ 小王 │ │ 用户 │ │ (不擅长直接交流) │ │ (不直接操作内核) │ └────────┬────────┘ └────────┬────────┘ │ │ ┌────────▼────────┐ ┌────────▼────────┐ │ 王婆 │ │ Shell │ │ (沟通中介) │ │ (命令解释器) │ └────────┬────────┘ └────────┬────────┘ │ │ ┌────────▼────────┐ ┌────────▼────────┐ │ 如花 │ │ 内核 │ │ (最终决策者) │ │ (核心资源管理) │ └─────────────────┘ └─────────────────┘
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/8 10:52:28

PLC电梯控制系统设计

PLC电梯控制系统设计 第一章 系统设计目标与核心需求 本设计以PLC为核心控制单元,构建高效、精准、安全的电梯控制系统,核心目标是实现电梯轿厢的自动启停、楼层精准定位、门机联动控制与乘梯安全保障,适配中低层楼宇(3-10层&…

作者头像 李华
网站建设 2026/7/8 6:55:27

Calibre(开源电子书管理软件)

Calibre 是一款开源的电子书管理软件,它支持多种电子书格式,具备格式转换、元数据编辑、电子书阅读等功能,还能与几乎所有电子书阅读器兼容,方便用户管理和使用自己的电子书资源。 软件功能 电子书转换:Calibre 可以将…

作者头像 李华
网站建设 2026/7/1 6:59:26

Excel批量处理身份证信息太麻烦?这个免费工具让我效率翻倍

作为一名HR,每次整理员工档案都让我头疼不已。上周公司新入职了80多人,领导要求我从身份证号中提取出生日期、性别、年龄等信息,建立完整的员工信息表。 看着Excel里密密麻麻的身份证号,我陷入了沉思… 传统方法有多折磨人? 以前处理这类需求,我通常有两种选择: 方法一:手动输…

作者头像 李华
网站建设 2026/7/10 1:46:17

把火关在该待的地方:防火分隔设施安装的底线工程

一、什么是防火分隔设施安装?防火分隔设施安装,是指在建筑和工业项目中,依据国家消防技术规范和建筑防火设计要求,对防火墙、防火门、防火卷帘、防火隔墙、防火封堵等设施进行安装、固定、调试和验收的系统性工程。防火分隔设施并…

作者头像 李华
网站建设 2026/7/8 19:55:08

java+vue基于springboot的社区团购系统

目录基于SpringBoot和Vue的社区团购系统摘要系统核心功能模块技术实现亮点应用价值开发技术源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!基于SpringBoot和Vue的社区团购系统摘要 社区团购系统是一种结合线上订购与线下配送的电商模式…

作者头像 李华
网站建设 2026/7/10 13:50:23

java+vue基于springboot的社区流浪动物领养管理系统

目录系统概述技术栈核心功能系统优势开发技术源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!系统概述 基于SpringBoot和Vue的社区流浪动物领养管理系统旨在通过数字化手段优化流浪动物救助与领养流程。系统采用前后端分离架构&#xf…

作者头像 李华