linux基础
操作系统
作为用户和计算机硬件之间的桥梁 调度和管理计算机硬件进行工作
liunx系统网络配置
网络对应着一个ip地址
192.168.121.129
192.168.121自定义 vm自定义
192.168局域网 这个网络外面访问不到它 但它可以访问外面 只能由我们本机的网络访问
121是由软件设置的
手动设置ipv4 如果连接不上 自己在本机设置 然后高级网络设置自动设置
桥接模式与NAT
桥接模式:虚拟机与主机处于同一网段(如主机是192.168.1.100,虚拟机可能是192.168.1.101),由路由器 DHCP 分配。
NAT:虚拟机使用私有 IP(如192.168.220.xxx),共享主机的公网 IP 访问外网,外部网络无法直接看到虚拟机。
关机重启
在ubtun中定时关机 sudo shutdown -h 1
取消sudo shutdown -c
关机和重启
halt 关闭系统 不会断电
poweroff 关闭系统并断电
ubuntu修改主机名及host映射
主机名就是@之后:之前 命令终端提示符
命令就是sudo hostnamectl --static set-hostname ubuntu
映射核心作用
加速访问:直接关联 IP 和域名,跳过 DNS 解析步骤,打开对应网站更快。
本地测试:开发者可将未上线的网站域名,映射到本地服务器 IP,方便测试网站效果。
屏蔽网站:把不想访问的网站域名,映射到无效 IP(如 127.0.0.1),实现本地屏蔽。
实现方式
核心依赖电脑里的 “hosts 文件”,这是无扩展名的系统文件,专门存储域名和 IP 的映射关系。
不同系统的 hosts 文件路径不同,比如 Windows 在 C:\Windows\System32\drivers\etc,Mac/Linux 在 /etc/hosts。
初始linux
linux组成
linux系统内核:调度cpu 调度内存 调度文件系统
linux系统级应用程序:自带的程序 可供用户快速上手操作系统
系统之间互相拷贝:需要硬件兼容型一样
远程连接linux系统
对于操作系统的使用两种方式
1,图形化页面使用操作系统
2,以命令的形式使用操作系统
虚拟机快照
通过快照将当前虚拟机的状态保存下 来,在以后可以通过快照恢复虚拟机保存状态
右键虚拟机找到快照
linux目录结构
windows系统可以有多个盘符如c盘d盘等
linux没有盘符这个概念 只有一个根目录/,所有文件都在它下面
在根目录下有一个文件夹itcast
/itcast
bin命令 boot存储镜像文件 cdrom光驱 dev设备 etc环境 home家 lib依赖 media媒体设备 mnt临时存储 opt给我们安装软件的 proc内存
root最高权限 run运行 sbin超级命令 snap快照 srv系统服务运行存储文件 tmp存储临时文件 var存储日志文件
sys操作系统系统文件 user用户
linux命令入门
- 核心作用:快速查 “命令怎么用”
当你记不清某个命令的具体用法(比如参数、格式),又不想搜长篇文档时,用它最方便。
只显示关键信息,比如命令功能、常用参数、基本语法,一眼能看懂。 - 适用范围:只对 “内置命令” 有效
Ubuntu 的命令分两种:系统内置的简单命令(比如 cd、ls、pwd),和需要安装的外部命令(比如 git、docker)。
“help + 命令” 只能查内置命令,外部命令得用 “命令 --help”(多了两个短横线)。
linux命令基础
学习linux 本质上是学习在命令行下熟悉使用linux的各类命令
命令行:即linux终端,是一种命令提示符页面。以纯"字符"的形式操作系统 可以使用各种字符化命令对系统发出指令
命令:即linux程序。一个命令就是一个linux程序。命令没有图形化页面。可以在命令行(终端中)提供字符化的反馈
linux命令通用格式
command[-options][parameter]
command命令本身
-options[可选,非必填]命令的一些选项,可以通过选项控制命令的行为细节
parameter[可选,非必填]命令的参数,多数用于命令的指向目标等
ls-l/home
ls是命令本身,-l是选项,/home是参数
意思是以列表的形式,显示/home目录里面的内容
cp -r test1 test2
cp是命令本身 -r是选项 test1test2是参数
意识是复制文件夹test1 称为test2
ls命令入门
ls命令的作用是列出目录下的内容
ls[-a -l -h][linux路径]
home目录是
每一个用户在linux系统的专属目录,默认在:/home/用户名
假设你的用户名是 xiaoming:
刚登录终端时,pwd 显示 /home/xiaoming(当前目录 = home 目录),执行 ls 会列出 /home/xiaoming 下的文件(如 Documents、Downloads 等)。
执行 cd /tmp 后,当前目录变成 /tmp,此时 ls 会列出 /tmp 下的临时文件(与 home 目录无关)。
无论当前目录在哪里,执行 ls ~ 都会列出 /home/xiaoming 下的内容(因为 ~ 代表 home 目录)。
简单说:ls 是 “查看工具”,当前目录是 “你现在在哪”,home 目录是 “你的专属房间”—— 登录时你默认在自己的房间里,用 ls 能看到房间里的东西;你可以走到其他地方(切换当前目录),此时 ls 看到的是新地方的东西,但 “你的房间”(home 目录)始终在固定位置。
ls命令的参数和选项
打开跟目录 ls/
ls[-a -l -h][linux路径]
-a 可以展示隐藏的内容 以.开头的文件或者文件夹默认被隐藏
-l选项 以列表的形式展示内容 并展示更多的细节
-h选项 需要和-l选项搭配使用 显示文件大小
命令选项可以组合使用
cd pwd命令
语法:cd [linux路径]Change Directory
cd命令无需选项 只有参数 表示要切换到那个目录下
cd命令直接执行,不写参数,表示回到用户的HOME目录
没有选项 只有参数
cd -回到上一次所在目录
pwd查看当前目录 Print Work Directory
语法:pwd
pwd命令 ,没有选项 没有参数
作用 输出当前所在的工作目录
相对路径绝对路径和特殊路径字符
绝对路径:以根目录为起点 描述路径的一种写法,路径描述以/开头
相对路径:以当前目录为起点,描述路径的一种写法,路径描述无需以/开头
特殊路径符
“.” 表示当前目录,比如cd./desktop表示切换到当前目录下的Desktop目录内,和cd Desktop效果一致
“..”表示返回上一级目录,比如:cd.. 既可以切换到上一级目录,cd../..切换到上二级目录
“”表示HOME目录,比如cd 即可切换到HOME目录或cd~/Desktop,切换到HOME内的Desktop目录
创建目录命令mkdir 创建文件夹
语法:mkdir [-p] Linux路径
参数必填,表示linux路径,即要创建的文件夹路径,相对路径或绝对路径
-p选项可选 表示自动创建不存在的父目录 适用于创建连续多层级的目录
ctrl+l清屏
创建文件夹需要修改权限 请确保操作均在HOME目录内 不要再HOME外操作
涉及到权限问题 HOME外无法成功
文件操作命令(touch,cat,more)
如何分辨文件夹与文件 前面是d文件夹 -文件
掌握使用touch创建文件
在ubuntu图形化键文件 需要打开文件编辑器
语法:touch linux路径
touch命令无选项 参数必填 表示要创建的文件的路径,相对,绝对 特殊都可以
掌握cat,more查看文件内容
cat 用于查看文件内容
语法:cat linux路径
cat -n linux路径 可以查看到多少行
cat命令无选项 参数必填 表示查看的文件的路径,相对,绝对 特殊都可以
more 与cat差不多
more可以翻页查看 使用空格进行翻页 使用q退出查看 按b翻上一页
文件操作命令(-cp-mv-rm)
cp复制文件 文件夹
语法:cp[-r]参数1 参数2
-r选项 可选 用于复制文件夹使用,表示递归
参数1,linux路径 表示被复制的文件或文件夹
参数2,linux路 径 表示要复制去的地方
mv移动文件 文件夹
语法:mv 参数1,参数2
参数1,linux路径 表示被移动的文件或文件夹
参数2,linux路径 表示要移动去的地方 如果目标不存在 则进行改名 确保目标存在
不能直接把文件夹放在回收站里面 但文件可以
rm删除文件 文件夹
语法:rm[-r-f]参数1,参数2....参数n
同cp命令一样 -r选项用于删除文件夹
-f表示force 强制删除(不会弹出提示确认信息)
普通用户删除内容不会弹出提示 只有root管理员用户删除用户删除内容会有所提示
所以普通用户用不到-f
通过su - root 并输入密码 切换到root
通过输入exit命令 退回普通用户
参数....表示要删除的文件或文件夹路径 按照空格隔开
rm命令支持通配符*,用来做模糊匹配
符号表示通配符,即匹配任意内容(包含空),示例
test,表示匹配任何以test开头的内容
*test,表示匹配任何以test结尾的内容
test,表示匹配任何包含test的内容
which find 查找命令
which命令 查看所使用的一系列命令的程序文件存放再哪里
语法:which 要查找的命令
find命令 按文件名查找文件
语法:find 起始路径 -name "被查找的文件名"
也可以用通配符
find命令 按文件大小查找文件
语法:find 起始路径 -size +|1-[kMG]
-
- 表示大于小于
n表示大小数字
KMG表示大小单位 k(小写字母)表示kb M表示MB,G表示GB
快捷键ctrl c表示停止输出
- 表示大于小于
grep wc 管道符
可以通过grep命令,从文件中通过关键字过滤文件行
语法:grep [-n] 关键字 文件路径
选项-n 可选 表示在结果中显示匹配的行的行号
参数,关键字 必填,表示过滤的关键字,带有空格或其他特殊符号,建议使用"" 将关键字包围起来
参数,文件路径,必填,表示要过滤内容的文件路径,可作为内容输入端口
可以通过wc命令统计文件的行数,单词数量等
语法:wc[-c -m -l -w]文件路径
选项,-c,统计bytes数量
选项,-m,统计字符数量
选项,-l,统计行数
选项,-w,统计单词数量
参数,文件路径,被统计的文件,可作为内容输入端口
直接输出wc test.txt
2 11 59 text.txt
2 是行数
11 是单词数
59 字节数
管道符:|
管道符含义:将管道符左边命令的结果,作为右边命令的输入
管道符也可以嵌套
echo tail 重定向符
可以使用 echo命令在命令行内输出指定内容
语法:echo输出的内容
无需选项 只有一个参数 表示要输出的内容,复杂内容可以用"包围"
反引号 我们可以通过将命令用反引号(通常称为飘号)将其包围
被`包围的内容 会被作为命令去执行 而非普通字符
重定向符
重定向符:>和>>
将左侧命令的结果 覆盖写入到符号右侧指定的文件中
将左侧命令的结果 追加写入到符号右侧指定的文件中
tail命令
使用tail命令 可以查看文件尾部内容,跟踪文件的最新更改,语法如下:
tail [-f -num] linux路径
参数,linux路径,表示被跟踪的文件路径
选项,-f,表示持续跟踪 ctrl+c停止持续跟踪
选项,-num,表示,查看尾部多少行,不填默认10行
vi/vim编辑器
vi/vim是linux中最经典的文本编辑器
同图形化界面中的文本编辑器一样 vi是命令行下对文本文件进行编辑的绝佳选择
vim是vi得加强版本 兼容vi得所有指令 不仅能编辑文本 而且还具有shell程序编辑功能 可以不同颜色得字体来辨别语法的正确性 极大方便了程序的设计和编辑性
命令:
vi 文件路径
vim 文件路径
vim兼容全部的vi功能 后续全部使用vim命令
如果不存在文件 会编辑新文件
vi/vim编辑文本三种模式 看图片
命令模式(操作入口)、插入模式(输入内容)、末行模式(执行指令)
. 命令模式(Command Mode)
具体作用:打开 vim 后的默认模式,负责光标移动、文本选择、复制 / 粘贴 / 删除等快速操作,不直接输入内容。
核心意义:摆脱鼠标依赖,用快捷键高效操控文本,是 vim “高效编辑” 的核心基础。
典型操作:h/j/k/l 移动光标、dd 删除整行、yy 复制整行、p 粘贴、u 撤销操作。
2. 插入模式(Insert Mode)
具体作用:唯一能输入文字、修改内容的模式,相当于普通文本编辑器的 “编辑状态”。
核心意义:专注于内容创作,与命令模式分离避免误操作,确保输入过程不受干扰。
进入 / 退出方式:命令模式下按 i(光标前插入)、a(光标后插入)、o(新行插入)进入;按 Esc 键退回命令模式。
3. 末行模式(Last Line Mode)
具体作用:在编辑器底部输入指令,执行保存、退出、查找替换、文件操作等全局功能。
核心意义:处理 “命令模式无法覆盖” 的复杂操作,拓展 vim 的功能性(如批量替换、多文件编辑)。
进入 / 退出方式:命令模式下按 : 进入;执行指令后按 Enter 完成,或按 Esc 退回命令模式。
典型操作::w 保存、:q 退出、:wq 保存退出、:q! 强制退出、:%s/旧内容/新内容/g 全局替换。
linux的root用户
语法:su [-] [用户名]
符号是可选的 表示是否在切换用户后加载环境变量
参数 用户名
切换用户后 可以通过exit命令退回上一个用户 也可以使用快捷键 ctrl + d
使用普通用户,切换到其他用户需要输入密码,如切换到root用户
使用root用户切换到其他用户 无需密码 可以直接切换
普通用户的权限,一般在其HOME目录内是不受限的
一旦出了HOME目录,大多数地方,普通用户仅有只读和执行权限,无修改权限
sudo命令
sudo命令 为普通命令授权 临时以root身份执行
语法: sudo 其他命令
在使用它命令之前 带上sudo 即可为这一条命令临时赋予root授权
但是并不是所有用户 都有权利使用sudo 我们需要为普通用户配置sudo认证
为普通用户配置sudo命令 输入visudo命令
在文件最后添加
may ALL=(ALL) NOPASSWD:ALL
用户用户组
linux系统中可以:
配置多个用户 多个用户组
用户可以加入多个用户组
linux中关于权限的管控级别有2个级别
针对用户的权限控制
针对用户组的权限控制
比如:针对某文件 可以控制用户的权限 也可以控制用户组的权限
以下命令需root用户执行
创建用户组
groupadd用户组名
删除用户组
groupdel用户组名
用户管理
以下命令需root用户执行
创建用户
useradd[-g-d]用户名
选项:-g指定用户的组 不指定-g 会创建同名组并自动加入 指定-g需要组已经存在 如已存在同名组 必须使用-g
选项:-d指定用户HOME路径 不指定 HOME目录默认在:/home/用户名
删除用户
userdel[-r]用户名
选项:-r 删除用户的HOME的目录 不使用-r 删除用户时 HOME目录保留
查看用户所属组
id[用户名]
参数:用户名,被查看的用户,如果不提供则查看自身
修改用户所属组
usermod -aG 用户组 用户名 ,将指定用户加入指定用户组
getent
使用getent命令 可以查看当前系统中有哪些用户
语法:getent passwd
一共有七分信息
用户名:密码(x):用户ID:组ID:描述信息(无用):HOME目录:执行终端(默认bash)
使用getent命令 同样可以查看当前系统中有哪些用户组
语法:getent group
包含三份信息,组名称:组认证(显示为X):组ID
查看权限控制(看图片)
x 的核心含义是 “能否进入该文件夹(切换到该目录)并访问其中的内容(包括查看子文件 / 子文件夹的信息)”
一个文件想要想程序一样执行的话 要x
修改权限控制 - chmod
我们可以使用chmod命令修改文件 文件夹的权限信息
注意 只有文件 文件夹的所属用户或root用户可以修改
语法:chmod [-R] 权限 文件或文件夹
选项:-R 对文件夹内的全部命令应用同样的操作
chmod u=rwx,g=rx,o=x hello.txt将文件权限修改为rwx rx x
u表示user所属用户权限 g表示group组权限 o表示other其他用户权限
权限的数字序号
r计为4
w计为2
x计为1
751 rwx r-x --x
修改权限控制 chown命令
使用chown命令 可以修改文件 文件夹的所属用户和用户组
普通用户无法修改所属为其他用户或组 所以此命令只适用root用户执行
语法:chown [-R] [用户]:[用户组] 文件或文件夹
选项-R 同chmod 对文件夹内全部内容应用相同规则
选项 用户 修改所属用户
选项 用户组 修改所属用户组
:用于分隔用户和用户组
各类小技巧快捷键
ctrl + c 强制停止 也可以退出当前输入 重新输入
ctrl + d 退出账号登录 退出某些特定程序的专属页面 不能退出vi/vim
history命令 查看历史输入过的命令
历史命令搜索 !命令前缀 自动执行上一次匹配的 !l 不加空格
ctrl +r输入内容去匹配历史命令 如果是你想要的回车执行 键盘左右键可以得到此命令不执行
光标移动快速键
ctrl+a 跳到命令开头 ctrl+e跳到命令结尾
ctrl+键盘左键 向左跳一个单词
ctrl+键盘右键 向右跳一个单词
ctrl+l 清空终端内容 或通过clear命令
软件的安装
linux支持两种方式安装 下载安装包自行安装 系统的应用商店内安装
在centos系统yum命令:RPM包软件管理器 用于自动化安装配置linux软件 并自动解决依赖问题
语法yum [-y] [install|remove|search]软件名称
选项-y 自动确认 无需手动确认安装或卸载过程
install安装
remove卸载
search 搜索
需要root权限
在ubtun系统下面
APT软件包管理器
在APT是Debian及其派生linux的软件包管理器 可以自动下载 配置 安装二进制或者源代码格式的软件包
使用apt查看本身命令
用法APT 选项 命令
systemctl命令
linux系统很多软件(内置或第三方)均支持使用systemctl命令控制:启动 停止 开机自启
能够被systemctl管理的软件 一般也称之为:服务
语法:systemctl start|stop|status|enable|disable 服务名
启动 关闭 查看状态 开启开机自启 关闭开机自启
系统内置的服务比较多
NwtworkManager 主网服务
network 副网络服务
firewalld 防火墙服务
sshd,ssh服务(FinalShell远程登陆 Linux使用的就是这个服务)
在ubuntu中默认防火墙是ufw
除了内置的服务以外 部分的第三方软件也可以systemctl进行控制 (只要那个软件内置有去注册服务的功能)
yum install ntp安装ntp
可以通过ntpd服务名 配合systemctl进行控制
yum install httpd 安装apache服务器软件
可以通过httpd服务名 配合systemctl进行控制
部分软件安装后没有自动集成到systemctl中 我们可以手动添加
软链接
在系统中创建软链接 可以将文件 文件夹链接到其他位置
软链接是一个特殊的文件,它存储的内容是另一个文件或目录的路径(可以是绝对路径或相对路径)。当访问软链接时,系统会自动 “跳转” 到它所指向的原始文件 / 目录,读取或操作原始文件的内容。
语法:ln -s 参数1参数2
-s选项 创建软链接
参数1:被链接的文件或文件夹
参数2:要链接去的地方
ln -s /etc/yum.conf~/yum.conf
日期和时区
date命令可以在命令行中查看系统时间
语法:date[-d][+格式化字符串]
-d按照给定的字符串显示日期 一般用与日期计算
date -d "+1 day"
支持的时间标记
year month day hour minute second
格式化字符串:通过特定的字符串标记,来控制显示的日期格式
%Y年
%y年份后两位数字
%m月份
%d日
%H小时
%M分钟
%S秒
%s自1970-01-01 00.00.00UTC到现在的秒数
修改linux时区
使用root权限
rm -f /etc/localtime
sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
npt程序
npt程序自动校准系统时间
启动 并设置开机自启
nptd启动后会定期帮我们联网校准时间
也可以手动校准(root)ntpdate -u ntp.aliyun.com
IP地址 主机名
Ip地址主要有两个版本 V4 和 V6
ipv4版本的地址格式a.b.c.d 其中a.b.c.d表示0~255的数字
在windows中ipconfig
可以通过命令ifconfig 查看本机的ip 如果不能使用 安装yum -y install net-tools
ens33:是系统的物理(或虚拟)以太网卡。命名遵循 “可预测网络接口命名规则”,其中 “en” 表示以太网(Ethernet),“s” 表示热插拔插槽设备,“33” 是插槽编号。它是系统与外部网络通信的主要通道,负责处理 IP 数据包的收发,例如你图中显示的 192.168.121.128 就是该网卡的 IPv4 地址,用于局域网内的网络连接。
lo:是回环接口(“loopback” 的缩写),是一个虚拟接口,IP 地址默认是 127.0.0.1。它仅用于本机内部的网络测试,发送到该接口的数据包不会真正发送到外部网络,而是由本机直接接收,常用于调试网络程序(比如在浏览器输入 127.0.0.1 测试本地 Web 服务)。
virbr0:是虚拟桥接网卡,由虚拟化软件(如 KVM、libvirt)创建,用于虚拟机的网络桥接。它的 IP 地址通常是 192.168.122.1(如你图中所示),作用是为虚拟机提供网络连接,实现宿主机与虚拟机、虚拟机之间的网络通信。
在linux中修改主机名
可以使用:hostname查看主机名
可以使用命令:hostnamectl set-hostname主机名 修改主机名(需root)
重新登录FinalShell即可查看主机名以正确显示
域名解析
配置linux固定ip地址
网络传输
下载和网络请求
掌握使用ping命令检查网络服务器是否可连通状态
语法 ping[-c num]ip或主机名
选项c 检查次数 不使用c 无限次数检查
ping baidu.com
掌握使用wget命令下载文件
语法:wget[-b]url
选项:-b 可选 后台下载 会将日志写入到当前目录的wget-log文件
参数:url 链接
可以通过 cat wget-log 或 less wget-log 命令查看这个日志文件的内容
掌握使用curl命令发起网络请求
语法curl [-O] url
-O用于下载文件 当url是下载链接时 可以使用此选项保存文件
端口
端口的概念
端口可以锁定计算计上的具体程序
nmap命令 安装yum -y install nmap
语法nmap 被查看的IP地址
nmap命令查看端口占用情况
掌握netstat命令的基本使用 查看指定端口的占用情况
语法:netstat -anp|grep 端口号 安装netstat:yum -y install net-tools
netstat -anp|grep 端口号 |
进程管理
掌握进程的概念
进程就是程序运行的有个id
可以通过ps命令查看linux系统中的进程信息
语法ps[-e -f]
选项-e 显示全部的进程
选项-f 以完全格式化的形式展示信息(展示全部信息)
显示信息表示
UID 进程所属的用户ID
PID 进程的进程号ID
PPID 进程的父ID(启动此进程的其他进程)
C 此进程的CPU占用率
STIME 进程的启动时间
TTY 启动此进程的终端序号 如显示? 表示非终端启动
TIME 进程占用CPU时间
CMD 进程对应的名称或启动路径或启动命令
使用管道符配合grep找到
ps -ef|grep 12
关闭进程
在linux中 可以通过kill命令关闭进程
语法:kill[-9]进程ID
kill 不使用-9得到结果(Terminated)
选项-9 表示强制关闭进程 不使用此选项会向进程发送信号要求其关闭 但是否关闭看进程自身的处理机制 (得到结果killed)
主机状态监控
查看系统资源占用
可以通过top命令查看CPU 内存使用情况(看图片)
负载表示1 有一颗cpu百分百运行
磁盘信息监控
使用df命令 可以查看硬盘的使用情况
语法:df[-h]
选项-h可以更加人性化显示
使用iostat查看CPU 磁盘的相关信息
语法iostat[-x][num1][num2]
选项:-x 显示更多信息
num1:数字 刷新间隔 num2:数字 刷新几次
tps:该设备每秒的传输次数 一次传输意思是一次I/O请求。多个逻辑请求可能会被合并为"一次I/O请求" 一次传输请求的大小是未知的
网络状态监控
语法:sar -n DEV num1 num2
选项:-n查看网络 DEV表示查看网络接口
num1:刷新间隔(不填查看一次结束)num2:查看次数(不填无限次数)
环境变量
环境变量:系统和程序共用的 “全局备忘录”,存关键信息(如命令路径、主目录);
在linux系统中执行 env命令即可查看当前系统中记录的环境变量
环境变量是一种KeyVakue型结构
$的核心作用是 “引用环境变量的值”—— 相当于告诉系统:“把‘某个变量’里存的内容拿出来用”
用echo $变量名查看值 或者echo${变量名}qw 拼接
自行设置环境变量
linux环境变量可以用户临时去设置 其中分为
临时设置 语法:export 变量名=变量值
永久生效
针对当前用户生效 配置在当前用户的:~/bashrc文件中
针对所有用户生效 配置在系统的 /etc/profile文件中
并通过语法:source配置文件 进行立刻生效 或重新登陆finalShell生效
linux文件的上传和下载
利用finalShell
下载yum -y install ltzsz可以安装这个命令
rz文件上传
sz文件 文件进行下载
压缩和解压
如何在linux系统中操作:tar,gzip,zip这三种压缩格式
tar命令(看图片)
zip命令
浙公网安备 33010602011771号