功能:打包/解包,不打开它,直接看内容
参数组合:(这里需要注意的是:-f 后面不能再加别的参数,-f 只能作为最后一个参数)
将lesson5打包并压缩
[root@VM-0-16-centos 118]# tar -czf lesson5.tgz lesson5
将lesson5.tgz解压并解包到当前路径下
[root@VM-0-16-centos 118]# tar -xzf lesson5.tgz
将lesson5.tgz解压并解包到指定路径下,-C .. 解压到上级路径下
[root@VM-0-16-centos 118]# tar -xzf lesson5.tgz -C ..
加上v选项,表示显示打包并压缩的过程
[root@VM-0-16-centos 118]# tar -cvzf lesson5.tgz lesson5
lesson5/
加上v选项,表示显示解压解包的过程
[root@VM-0-16-centos 118]# tar -xvzf lesson5.tgz
lesson5/当我们加上v参数时,如果这个过程比较长,那么我们需要等待的时间就比较长,那此时我们就可以在后面加上&,& 就表示在后台显示这个过程,在这期间,我们在控制台进行其他操作
[root@VM-0-16-centos 118]# tar -cvzf lesson5.tgz lesson5 &
[1] 14500
[root@VM-0-16-centos 118]# lesson5/
pwd
/root/118
[1]+ Done tar -cvzf lesson5.tgz lesson5注意:我们直接使用 -czf 和 -xzf 即可,就不要给自己找麻烦!!!
在前面的学习中,我们已经学习了如何把.zip压缩包在Linux和windows中进行互传,.tgz压缩包在Linux和windows中的互传也是这样的——
将lesson5.tgz压缩包从Linux中传到windows中
[root@VM-0-16-centos 118]# sz lesson5.tgz
.tgz压缩包从windows中传到Linux中
[root@VM-0-16-centos 118]# rz -Eok,Linux和Linux的互传就不像上面的那种做法了,在这里我们需要用到一个新的指令——
选项 | 说明 |
|---|---|
-r | 递归复制整个目录 |
# 复制单个文件
scp local_file.txt user@remote_host:/remote/directory/
# 复制目录(递归)
scp -r local_folder/ user@remote_host:/remote/directory/
把当前Linux主机的.tgz 压缩包拷贝到另一台Linux主机上
注意:这里需要知道另一台Linux主机的密码!!!
功能:查看一个文件的更详细信息
语法:
[root@VM-0-16-centos 118]# file test.txt
test.txt: ASCII textbc指令:Linux下的计算器
bc 进入交互模式,支持 + - * / 运算,如 2+5 回车返回 7;输入 quit 退出。echo "1+2+3+4+5"|bc 直接返回结果15[root@VM-0-16-centos 118]# 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'.
1+2
3
23*10
230
[root@VM-0-16-centos 118]# echo "1+2+3+4" | bc
10输入 quit 退出计算器!!!
history 可以查看历史命令,默认是1000个
语法:
history 后面跟数字,表示查看最近的多少条指令
查看最近的10条历史指令
[root@VM-0-16-centos 118]# history 10
958 2025-12-20 19:31:17 tar -czf lesson5.tgz lesson5
959 2025-12-20 19:31:20 ll
960 2025-12-20 19:31:31 sc lesson5.tgz
961 2025-12-20 19:31:55 sc lesson5.tgz
962 2025-12-20 19:32:03 sz lesson5.tgz
963 2025-12-20 19:42:23 file test.txt
964 2025-12-20 19:44:19 bc
965 2025-12-20 19:46:20 echo "1+2+3+4" | bc
966 2025-12-20 19:48:03 history
967 2025-12-20 19:48:57 history 10本质是在问:CPU的架构是什么?
使用 uname -a 指令查看更详细信息,使用 uname -r 查看体系结构——

使用 uname -r ——

cat /etc/os-release


补充一个关机指令,了解即可:

以下命令作为扩展:
Linux严格意义上说是一个操作系统,我们称之为“核心(kernel)”,但我们一般用户,不能只直接使用内核,而是通过内核的“外壳”程序,也就是所谓的shell,通过shell来和内核沟通。
这该如何理解呢?为什么不能直接使用内核?
其实操作系统应该被分成以下两个部分:




从技术角度,Shell的最简定义:命令行解释器

主要包含:
这说的是啥呀!不懂。
ok,接下来我们通过一个小故事来感性的理解外壳:
阶段一:在一个村子里面,老王是村长,老王的儿子小王事业有成回到家中,老王催小王找对象,但是小王不擅长和女孩子打交道,于是老王找到王婆,王婆到了小王家中,小王说“我喜欢隔壁如花,你去帮我说”,王婆就去隔壁如花家说媒,如花想了想,说“小王是谁呀”,然后如花说“不喜欢小王,拒绝吧”,王婆就会回去告诉小王~~~
理解:
这就相当于我随便在命令行输入指令——会显示执行失败

这里为什么要存在王婆?因为用户不擅长和女生打交道
为什么Linux系统中存在shell外壳?
阶段2:小王不死心,请王婆再去争取一下,王婆就再去隔壁如花家,看见小帅在如花家吃饭,王婆一看就知道如花已经有男朋友了,王婆直接回去告诉小王“如花已经有男朋友了,还是不要打扰如花了”
理解:
这就说明:外壳可以在一定程度上拦截非法请求,变相的保护了内核
阶段3:小王人不死心,王婆正想拒绝,看到了老王,王婆只能暂时答应,王婆说这事一定要办(不一定办成),但是这不能影响了自己的招牌,于是想出了成立“王婆婚介所”,在招聘网站上找实习生,让实习生去说。实习生把事情办成了是王婆指导有方;失败了只能说这个实习生的能力不强,再换一个实习生,王婆不断地派实习生去做小王这个没有成功的事情
这是不是就是:shell会通过创建子进程的方式来进行命令行的解析,如果子进程挂了,shell还可以创建其他的子进程,不会影响shell本身
这里有很多细节,我们先来总结一下为什么Linux系统中存在shell外壳?
Linux中用到的外壳程序被称为shell外壳程序,叫做bash
如果媒婆是shell外壳,王婆就是bash

windows中也有类似的外壳程序,图形化界面就是一种外壳程序

总结:外壳就是包裹在操作系统外用来命令行解析的程序!!!
阶段一:正常命令执行流程
┌─────────┐ 请求 ┌─────────┐ 传递 ┌─────────┐
│ 小王 │ ────────> │ 王婆 │ ────────> │ 如花 │
│ (用户) │ │ (Shell) │ │ (内核) │
└─────────┘ └─────────┘ └─────────┘
│ │ │
│ "喜欢如花" │ 解析命令 │ 处理请求
│ │ │
│ │ │
│ ←──────────────── ──────────────────── │
│ 反馈结果(拒绝) │关键理解:用户不能直接操作内核,需要通过Shell中介
阶段二:Shell拦截非法请求
┌─────────┐ 再次请求 ┌─────────┐
│ 小王 │ ────────> │ 王婆 │
│ (用户) │ │ (Shell) │
└─────────┘ └─────────┘
│
│ 检测到异常情况
│ (如花已有对象)
│
┌─────┴─────┐
│ 拒绝执行 │
│ 保护内核 │
└─────┬─────┘
│
│ ←────────────────── │
│ 直接返回拒绝 │关键理解:Shell能在传递前拦截危险请求,保护系统
阶段三:创建子进程执行任务
┌─────────┐ ┌─────────┐ ┌─────────┐
│ 小王 │ │ 王婆 │ │ 如花 │
│ (用户) │ │ (Shell) │ │ (内核) │
└─────────┘ └─────────┘ └─────────┘
│ │ │
│ 小王再次请求 │ │
│ ────────────────────>│ │
│ │ │
│ │ 创建子进程 │
│ │ (派个小弟去) │
│ │ ────────────────────>│
│ │ │
│ │ │ 处理请求
│ │ │ 创建新进程
│ │ │ PID: 12345
│ │ │
│ 立即返回 │ 立即返回 │
│ <────────────────────│ <────────────────────│
│ "[1] 12345" │ │
│ │ │
│ (王婆继续服务) │ (小弟在后台工作) │
│ │ │关键理解:通过子进程机制,Shell本身不会崩溃
总结:王婆(Shell)的核心工作
┌─────────────────────────────────────┐
│ 王婆的工作 │
├─────────────────────────────────────┤
输入 → │ 1. 接收用户(小王)命令 │
│ 2. 解析语法和结构 │
│ 3. 扩展变量和通配符 │
│ 4. 处理重定向和管道 │
│ 5. 查找命令位置 │
│ 6. 创建子进程执行 │
│ 7. 管理后台作业 │
│ 8. 返回结果给用户 │
└─────────────────────────────────────┘
↓ ↓
传递请求给如花 保护如花安全
(系统调用) (拦截非法请求)uu们,本文的内容到这里就全部结束了,再次感谢您的阅读!
结语:希望对学习Linux相关内容的uu有所帮助,不要忘记给博主“一键三连”哦!