4.5 Linux指令和权限

一.本期指令大概

|---------|-------------------------------------------------------------------------------------------------------------|
| grep | 用于在文件或标准输入中匹配指定模式(正则表达式或字符串),并输出匹配的行 grep [选项] "模式" [文件...] * -i:忽略大小写。 * -v:反向匹配。 * -n:显示匹配行的行号。 |
| zip | zip 命令用于将文件或目录压缩为 ZIP 格式的压缩包 zip [选项] 压缩包名称 文件/目录列表 -r:递归压缩目录及其子目录 |
| unzip | unzip 命令用于解压 ZIP 格式的压缩文件。 unzip [选项] 压缩包名称 |
| tar | 压缩文件: tar -czvf 压缩包名称 文件 * -c 表示创建归档,-v 显示详细过程,-f 指定归档文件名,-z 启用 gzip 压缩。 解压文件: tar -xzvf 压缩包名称 |
| SCP | 是一种基于 SSH 的安全文件传输协议,用于在本地和远程系统之间加密传输文件。 scp [选项] 源文件 目标路径 |
| rz/sz | rz用于接收文件,sz用于发送文件 配合使用,实现本地与远程服务器之间的文件传输。 |
| bc | 就相当于一个简单计算器 eg:echo 2+4+5+6 | bc |
| uname-r | 获取Linux系统的内核版本 |
| uname-a | 显示当前操作系统的详细信息。该命令会输出内核名称、主机名、内核版本、操作系统发行版本、硬件架构等信息。 |
| su/su- | su:仅切换用户身份,不改变当前的工作目录和环境变量 su-:完全模拟目标用户的登录环境,切换到目标用户的家目录 |

二.具体运用

1.grep

1.看日志(以"removed"为关键字为例)

a.

b.(grep也可以直接接文件)

c.看文件

hello.txt文件内容

a.

b.

c.d.忽略大小写

grep -i hello hello.txt

2.zip

a.把lesson4.zip传到other,再在other里面unzip lesson4.zip(-r递归压缩)

zip -r lesson4.zip lesson4

mv lesson4.zip lesson4

cd other

unzip lesson4.zip

b.也可以 -d解压到指定文件 unzip archive_name.zip -d destination_folder

zip -r lesson4.zip lesson4

unzip lesson4.zip -d other

c.传到windows上(sz)

d.传回到Linux上(rz)

这个hh.zip就是lesson4.zip换了名字方便区分

也可以直接拖拽

3.tar

tar czf XXX.tgz.src tar cvzf XXX.tgz src(v可以显示打包的进度)

tar xzf XXX.tgz tar xvzf XXX.tgz(v显示解压的进度)

tar cvzf lesson4.tgz lesson4(打包)

mv lesson4.tgz other

cd other

tar xvzf lesson4.tgz(解压)
tar xvzf lesson4.tgz -C /root(解压到指定文件 -C)

同样也可以通过rz/sz和windows互传

三.知识点

1.打包:将多个文件或目录合并为一个单一文件(如.tar),不减少体积

2.压缩 : 压缩通过算法(如ZIP、GZIP)减小文件体积。

打包主要作用:整合多个文件避免遗漏

压缩主要作用:节省存储空间,加速文件传输(压缩后体积更小),加密保护隐私

3.面试题

1.怎么看你Linux的体系结构和内核版本?

体系结构==芯片结构

uname-r

eg:5.4.0-91-generic

  • 5:主版本号
  • 4:次版本号
  • 0:修订号
  • 91:发行版特定补丁版本
  • generic:内核类型(可能是 generic、server 等)

uname -a

eg:Linux hostname 5.4.0-91-generic #102-Ubuntu SMP Fri Nov 5 16:31:28 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux (相比uname-r更为完整)

  • Linux:内核名称。
  • hostname:主机名。
  • 5.4.0-91-generic:内核版本。
  • #102-Ubuntu SMP...:发行版本和编译信息。
  • x86_64:硬件架构。

2.x86_64==x64,x86_32==x32

3.老内核更成熟,流程规范,资源丰富,抗风险能力强,所以对企业来说会优先选择老内核

4.ARM,广泛应用于移动设备、嵌入式系统、物联网设备以及高性能计算领域。

5.电脑端芯片架构主要指中央处理器(CPU)的设计框架,涉及指令集、微架构、核心布局等关键要素。目前主流架构包括x86、ARM、RISC-V等

6.热键

ctrl+c:终止异常

ctrl+r:找历史命令(可以通过上下键翻阅),也可以输入关键字寻找

ctrl+d:退出登录。第一次断开机器,第二次退出Xhell

tab:命令补全和档案补齐

history:记录了所有历史命令,可结合grep。(默认记录1000行)

7.shell及运行原理

用户输入命令后通过外壳程序到操作系统内核,内核再将用户的命令执行,再通过外壳程序将结果

返回回来,最终用户看到执行结果

为什么存在外壳程序:

a.方便用户操作

b.外壳程序可以保护内核

c.外壳程序->进程->新命令到来->创建子进程(子进程挂了不会影响上一级进程)、

常见外壳程序

  • Bash(Bourne-Again Shell):Linux/macOS默认外壳,兼容性强,支持脚本编程。
  • Zsh:扩展功能丰富(如自动补全、主题定制),逐渐成为开发者首选。
  • PowerShell:Windows现代外壳,集成.NET框架,支持对象管道处理。

8.用户权限

相关推荐
keyipatience2 小时前
6.linux权限
linux·运维·服务器
小章UPUP2 小时前
自部署 LaTeX/Markdown 写作平台
linux
yunhuibin2 小时前
Linux 7.0 调度器:C 语言面向对象(OOPC)的极致实践
linux·运维·c语言
feng_you_ying_li2 小时前
linux之进程概念:体系结构,操作系统的基本介绍
linux
尘世壹俗人2 小时前
linux编译安装git
linux·运维·git
爱学习的小囧2 小时前
ESXi/vCenter 批量开关虚拟机完整教程 | PowerCLI 一键 + 原生脚本循环,新手也能落地
运维·网络·数据库·esxi
xxjj998a2 小时前
如何安装linux版本的node.js
linux·运维·node.js
AC赳赳老秦3 小时前
测试工程师:OpenClaw自动化测试脚本生成,批量执行测试用例
大数据·linux·人工智能·python·django·测试用例·openclaw
路溪非溪3 小时前
Wireshark抓取以太网MAC帧并进行分析
linux·网络·驱动开发·wireshark