1、常用基础命令
在 Linux 操作系统中,命令是用户与系统交互的关键方式。基于 Shell(如 Bash、Zsh 等)进行解析执行, 以标准化文本字符串形式呈现。
命令的语法格式:命令名 [选项] [参数]
• 命令名:必不可少的核心部分,是执行特定操作的基础标识符,由英文单词或者是单词缩写构成;
• 选项:用于灵活调整命令的执行行为和输出格式。可根据实际需求决定是否使用; 通常以短选项“-”或者是长选项“--”作为前缀;
• 参数:作为命令操作的对象或数据来源,也并非总是必需,参数可能是文件路径、目录名、字符串 等等;
1.1目录查看选项和对应功能
| 命令名 | 英文 | 功能 | 常见格式 | 常用选项 | 对应功能 |
| ls | list | 显示目录中文件及其属性信息 | ls [选项] [文件或目录] | 无 | 列出当前工作目录中的文件信息 |
| -l | 以长格式显示文件详细信息(权限 、所有者、大小、修改时间等) | ||||
| -h | 与 -l 结合使用,以人类可读格式显-h-a-t-R 示文件大小(如234M,2G | ||||
| -a | 显示所有文件和目录,包括隐藏文 件(以 . 开头的文件) | ||||
| -t | 按修改时间排序,最新的排在前面 | ||||
| -R | 递归列出所有子目录及其内容 |

ls-l输出格式依次解析
| 类型 | 详情 |
|---|---|
| 文件类型 | l:链接文件 -:普通文件 d:目录文件 p:管道文件 b:块设备文件 c:字符设备文件 s:套接字文件 |
| 文件权限 | 所有者权限(如:rwx)/ 组用户权限/ 其他用户权限;r:读权限;w:写权限;x:可执行权限;-:无权限 |
| 硬链接数 | 多少个路径指向同一个文件索引 |
| 所有者 | 所有者的名称 |
| 所属组 | 所有者所属组的组名 |
| 文件大小 | 使用 -h:单位为 K/M/G; 不使用 -h:单位为字节 |
| 最后修改时间 | 文件最后一次被更改的时间点 |
| 文件名 | 文件的名称 |
1.2目录切换相关命令
| 命令名 | 英文 | 功能 | 常见格式 | 常用操作 | 常用操作功能 |
|---|---|---|---|---|---|
| cd | change directory | 切换目录(路径可以是相对路径也可以是绝对路径 | cd [选项] [目录路径] | 切换到当前使用者的家目录 | |
| .. | 切换至当前位置的上一级目录 | ||||
| - | 切换至上次所在目录 | ||||
| pwd |
print working directory | 显示当前工作目录的路径 | pwd | 显示所在目录的绝对路径 | |
| clear | clear | 清除终端界面已有内容 | clear | 清除终端界面已有内容 | |
| exit | exit | 关闭当前终端 | exit | 关闭当前终端 |
1.3创建文件与目录相关命令
| 命令名 | 英文单词 | 功能 | 常见格式 | 常用选项 | 加选项后的功能 |
|---|---|---|---|---|---|
| touch | touch | 创建空文件与修改时间戳 | touch [选项] [文件名] | 无 | 创建士介空内容的文杰文件;、 如果文件已经存茬,则会对文件的时间进行修改操作 |
| -d | 设置日期, 格式: touch-d"YYYY-MM-DD" 文件名 | ||||
| mkdir | make directories | 创建目录 | mkdir [选项] [目录名] | 无 | 创建一个新的目录文件, 若创建的目标具录已经存在,则会提示已存在而不继续创建 |
| -p | 递归创建多级目录 | ||||
| rm | remove | 删除文件或目录 | rm [选项][文件或目录] | 无 | rm 可删除文件;对于空目录,使用 rmdir 命令删除 |
| -rf | -f强制删除文件而不询问; -r通常与-f结合使用,以强制递归删除目录及其内容,避免单独使用-r时的交互提示或权限问题 | ||||
| cp | copy | 复制文件或目录 | cp[选项]源文件或目录目标文件或目录 | 无 | 复制文件 |
| -rf | 复制目录 | ||||
| mv | move | 对文件和目录进行剪切和重命名操作 | mv[选项][源文件或目录][目标文件或目录] | 无 | 同一目录下对文件和目录进行重命名操作; 不同目录下对文件和目录进行剪切操作 |
| shutdown | shutdown | 关闭服务器的系统 | shutdown [选项] [时间] | -r | 将系统立即重启,同时可以设定当前服务器在指定时间自动重启,格式为 “shutdown - r+分钟”或者 “shutdown - r时间” |
| -h | 将系统立即关机,同时可以设定当前服务器在指定时间自关机,格式为 “shutdown-h+分钟”或者 “shutdown - h 时间” | ||||
| reboot | reboot | 重新启动计算机 | reboot | 无 | 用于重启系统,简单快捷 |
1.4通配符
|
命令元素 | 含义 | 功能 | 常见使用场景格式 | 举例说明 |
|---|---|---|---|---|
| * | 星号 | 匹配任意数量(包括零个)的任意字符 | ls[文件名包含*] rm [文件名包含*]等 | *. txt: 匹配所有以. txt结尾的文件; test*:匹配所有以 test 开买的文件或目录名; |
| ? | 问号 | 匹配单个任意字符 | ls [文件名包含?]cp [文件名包含?]等 | file?. txt:匹配所有以 file开头, 后面跟一个任意字符且以. txt结尾的文件名; |
| [] | 方括号 | 匹配方括号内指定的任意一个字符 | ls [文件名包含[字符范围]]mv [文件名包含[字符范围]]等 | [abc]*:匹配以 a、b 或c开头的文件或目录; [0-9].txt:匹配所有文件名由单个数字开头且以. txt结尾的文件; |
2、用户组及命令
Linux 作为多用户多任务系统,支持同时登录多个用户,各用户拥有独立工作空间与资源访问权限。
权限管理核心意义:
•1 安全风险:普通用户误删 /etc/passwd 等系统关键文件,易致系统崩溃。
•2 数据保护:无权限隔离时,敏感财务数据可能被随意访问。
•3 底层机制:Linux 借助用户(UID)与用户组(GID)标识,精准管控文件、进程等资源访问,保障 系统安全稳定。
• 典型应用场景
• 1企业协作:开发组创建专属用户组共享代码权限。
• 2服务器管理:为运维人员分配高权限用户,普通用户仅开放有限权限,规避误操作与恶意行为;
2.1用户及用户组命令
| 命令名 | 英文单词 | 功能 | 格式 | 常用选项 | 加选项后的功能 |
|---|---|---|---|---|---|
| su | substitute user | 切换用户,默认切换到 root下 | su [选项] [用户名] | - | 以登录方式切换用户,加载目标用户的操作环境设置; |
| sudo | superuser do | 以管理员权限执行命令 | sudo [命令] | 无 | 让普通用户以 root权限执行指定命令 |
| useradd | user add | 创建新用户 | useradd [选项] 用户名 | -m | 用户目录不存在时则自动创建 |
| passwd | password | 修改用户密码 | passwd [用户名] | 无 | 丕指定用户名,修改当前用户密码; 指定用户名,修改指定用户密码(只有root用户可以修改); |
| whoami | who am i | 显示当前登录用户的用户名 | whoami | 无 | 无 |
| userdel | user delete | 删除用户 | userdel [选项] 用户名 | -r | 删除用户的同时用户所有资源也会删除 |
| usermod | user modify | 修改用户属性 | usermo d [选项] 用户名 | -g | 修改用户的初始组; |
| groupadd | group add | 创建新的用户组 | groupad d [选项] 组名 | 无 | 按默认规则创建组 (系统自动分配 GID) |
| -g | 指定新组的 GID (组标识符) | ||||
| groupdel | group delete | 删除用户组 | groupdel 组名 | 无 | 只能删除空的用户组 |
| id | identity | 显示用户UID、GID及所属组信息 | id [用户名] | -u | 仅显示用户 UID(用户标识符); |
| -g | 仅显示用户 GID(组标识符); |
3、软件包管理命令
当前 Linux 领域存在两大主流软件包管理机制:
1.以 Ubuntu 为代表的 Debian 系列,采用.deb包格式与 apt管理体系;
2.以 CentOS 为典型的 Red Hat 系列,依托.rpm格式与yum/dnf工具链;
3.1两种主流软件包管理机制对比
| 特性 | Debian 系 (. deb) | Red Hat 系 (. rpm) |
|---|---|---|
| 包格式 | . deb | . rpm |
| 依赖管理工具 | apt (或 apt-get) | yum或 dnf |
| 仓库配置 | / etc/ apt/ sources. list | / etc/ yum. repos. d/*. repo |
| 适用场景 | 桌面环境、开发环境(如 Ubuntu) | 服务器环境、企业级部署(如CentOS) |
| 依赖处理 | 灵活,支持更多社区软件 | 稳定,依赖关系严格验证 |
3.2软件包管理工具分类
| 分类维度 | Debian系 (APT) | Red Hat系 (YUM/DNF) | Arch系 (Pacman) |
|---|---|---|---|
| 包格式 | . deb | . rpm | . pkg. tar. zst |
| 底层工具 | DPKG | RPM | N/A (Pacman直接管理) |
| 高级工具 | APT (apt、 apt-get) | DNF(dnf install、 dnf update) | Pacman |
| 依赖处理 | APT自动处理 | DNF自动处理 | Pacman自动处理 |
| 仓库管理 | 集中式配置(sources. list) | 分散式配置 (. repo文件) | 配置文件/ etc/ pacman. conf |
| 特点 | 用户友好,适合桌面环境 | 稳定可靠,企业级使用 | 滚动更新,轻量高效 |
dpkg 是 Debian 及其衍生系统(如 Ubuntu)中最底层的软件包管理工具,直接操作 .deb 格式的软件 包文件,但不处理依赖关系;
3.3dpkg的核心特点与命令
| 特性 | 说明 | 示例场景 |
|---|---|---|
| 仅支持. deb文件 | 仅能安装、卸载、查询. deb格式的软件包不支持其他格式 (如. rpm、源码包) | 手动下载. deb文件后离线安装:sudo dpkg - i package. deb |
| 离线操作 | 无需联网即可操作,但需提前下载所有依赖包 | 无网络环境的服务器或设备中批量安装软件包 |
| 依赖需手动解决 | 安装时若缺少依赖,直接报错,需用户手动补全依赖包 | 安装 wps. deb时提示缺少libpng12-0需手动下载并安装该依赖包 |
dpkg常用命令
| 命令名 | 英文单词 | 功能 | 常见格式 |
|---|---|---|---|
| dpkg - i | install | 安装本地. deb软件包 | dpkg - i package. deb |
| dpkg - r | remove | 卸载软件包,保留配置文件 | dpkg - r package |
| dpkg - P | purge | 彻底卸载软件包 (含配置文件) | dpkg - P package |
| dpkg - l | list | 列出系统中已安装的所有软件包 | dpkg - l |
| dpkg - s | status | 显示指定软件包的详细状态信息 | dpkg - s package |
| dpkg - L | listfiles | 列出软件包安装到系统中的所有文件路径 | dpkg - L package |
3.4apt的特点与命令
apt 是基于 dpkg 构建于 Debian 系列(如 Ubuntu )的智能包管理工具。在 Debian 系列软件包管理 体系发展历程中,dpkg 先出现,作为底层工具直接操作.deb 格式软件包,但存在诸多局限。apt 在此基础上诞生,它能自动解析依赖,支持联网操作,为普通用户屏蔽了 dpkg 的底层复杂性,提供简化语义化命令,成为日常软件管理的优选工具;
| dpkg 短板 | apt解决方案 | 示例 |
| 依赖手动处理 | 自动解析依赖链(支持多层间接依赖) | 安装办公软件时, apt能自动处理其依赖的字体库及字体库依赖的基础组件等多层依赖,而dpkg 需用户手动查找安装各层依赖 |
| 仅支持离线操作 | 联网访问软件源(下载/更新/搜索远程包) | 执行 apt update命令可更新软件源列表, apt install nginx能从源下载安装 Nginx 软件包,dpkg 则只能在提前下载好相关. deb包及依赖包的离线环境操作 |
| 命令复杂度高 | 提供简化的语义化命令 (如: apt install) | dpkg安装软件命令选项复杂,而 apt install软件名简单易懂,新手也能快速上手 |
apt相关命令
| 命令 | 功能 | 示例 |
|---|---|---|
| apt update | 更新软件源列表和包版本信息(必做,安装/升级前必须执行) |
|
apt install 软件包名 | 安装包及依赖 (含推荐包) | sudo apt install git |
apt install - y 软件包名 | 静默安装 (无需确认) | sudo apt-y install git |
apt remove 软件包名 | 卸载包 (保留配置文件) | sudo apt remove git |
apt purge 软件包名 | 彻底卸载 (删除包 +配置文件) | sudo apt purge git |
3.5apt与dpkg协作使用
用户操作 apt:用户在终端输入 apt 相关命令,发起软件管理操作;
• 依赖解析 / 生成操作队列:apt 分析软件包依赖关系,规划安装、下载等操作顺序;
• 联网下载.deb 包到缓存:若软件包不在本地,apt 从软件源下载到缓存目录;
• 调用 dpkg 进行安装 / 卸载:apt 在后台调用 dpkg 执行实际安装或卸载动作;
• 更新 dpkg 底层数据库:安装或卸载完成后,更新 dpkg 数据库记录软件状态;
3.6dpkg和apt的对比
apt(如 apt-get/apt)是 Debian系列的上层包管理工具,它基于 dpkg 构建,主要解决 “依赖自动 解析” 和 “联网操作” 的问题,本质是 dpkg 的 “智能助手”;
| 对比维度 | dpkg | apt(apt-get/ apt) |
| 依赖处理 | 完全手动:需提前下载并安装所有依赖包 | 自动解析:联网搜索并下载缺失的依赖包 (含间接依赖) |
| 操作模式 | 纯离线:仅操作本地. deb文件 | 在线为主:支持从软件源更新、搜索、安装远程包 |
| 核心命令 | dpkg -i(安装本地包)、dpkg -r(卸载) | apt update (更新源)、apt install (联网安装) |
| 网络依赖 | 无 (不支持联网) | 必须联网 (需连接软件源) |
| 适用场景 | 离线环境、本地包调试、系统底层维护 | 日常联网安装、更新、管理软件 |
| 依赖风险 | 手动处理易导致版本冲突或依赖断裂 | 自动匹配兼容版本,风险更低 |
| 与系统交互 | 直接操作 / var/ lib/ dpkg/数据库 | 间接调用 dpkg执行底层操作 |
4、解压缩操作命令
tar 命令作为 Linux 系统中重要的归档工具,具备强大的打包与拆包功能。
tar命令还能与 gzip、bzip2等压缩 算法相结合,生成诸如.tar.gz、.tar.bz2等格式的压缩归档文件。
由于这种灵活性,tar 命令成为了系统备份、软件发布包制作等任务的优先选择。
4.1压缩命令
| 压缩格式 | 压缩命令格式 | 命令解释 |
| . tar | tar-cvf [目标文件名]. tar [源文件或目录] | 将[源文件或目录]打包成[目标文件名].tar -C:创建新的归档文件; -v:显示详细的操作过程; -f:指定归档文件的名称, |
| . tar. gz | tar-zcvf [目标文件名]. tar. gz [源文件或目录] | 将[源文件或目录]压缩成[目标文件名].tar. gz -Z::使用 gzip 算法进行压缩; |
| . tar. bz2 | tar-jcvf [目标文件名]. tar. bz2 [源文件或目录] | 将[源文件或目录]压缩成[目标文件名].tar. bz2 -j: 使用bzip2 算法进行压缩; |
4.2解压缩命令
| 压缩格式 | 解压缩命令格式 | 命令解释 |
| . tar | tan-xvf[归档文件名]. tar | 将[归档文件名].tar解压缩 -X:从归档文件中提取文件; -V:显示详细的操作过程; -f:指定要操作的归档文件, |
| . tar. gz | tar - zxvf [归档文件名]. tar. gz | 将[归档文件名]. tar. gz解压缩; -z:使用 gzip 算法进行解压缩; |
| . tar. bz2 | tar - jxvf [归档文件名]. tar. bz2 | 将[归档文件名]. tar. bz2解压缩 -j:使用 bzip2 算法进行解压缩; |
5、文件操作命令
5.1查看和显示文件
| 命令名 | 英文单词 | 功能 | 常见格式 | 常用选项 | 加选项后的功能 |
| cat | concatenate | 查看文件内容 | cat 文件名 | -n | 显示行号 |
| tail | tail | 显示文件尾部内容 | tail文件名 (默认显示文件最后10行) | -n -f | 显示文件最后n行 实时追踪文件新增内容 |
| head | head | 显示文件头部内容 | head文件名 (默认显示文件前10行) | -n | 显示文件前n行 |
| echo | echo | 在终端输出文本或变量值 | echo[字符串/ 变量] | ||
| >、>> (重定向) | redirect | >:覆盖写入文件 >>:追加写入文件 | echo"内容" > 文件名 echo"内容" > > 文件名 |
5.2搜索查找命令
| 命令名 | 英文单词 | 功能 | 常见格式 | 常用选项 | 加选项后的功能 |
| grep | grep | 在文件中搜索指定的字符串信息 | gre p“字符串”文件名 | -i -R | -i:统一匹配大小写文本 -R:从当前目录所有的文件中查找符合的字符串 |
| |(管道) | pipe | 连接两个命令 将前一个命令的输出作为后一个命令的输入 | 命令 1|命令2|命令3 | ||
| find | find | 查找文件或目录 | find路径-name“文件名” | -name-type | -name:指定名称 -type:指定类型 (f为文件,d为目录) |
5.3用户权限相关
| 命令名 | 英文单词 | 功能 | 常见格式 | 常用选项 | 加选项后的功能 | ||
| chmod | change mode | 修改文件权限 | chmo d 文件的权限 文件名/目录名 | -R | 递归修改目录及其子目录/文件权限 | ||
| 类别 | 具体内容 | 说明 | |||||
| 用户分类标识 | u (普通用户/文件所有者) g (组用户) o (其他用户) a (所有用户 ) | 区分不同类型的用户 | |||||
| 权限修改操作符 | +(添加权限) -(删除权限) =(修改权限,覆盖原有) | 用于调整用户权限 | |||||
| 权限标识 | r (可读,对应数字 4) w (可写,对应数字2) x (可执行,对应数字 1) -(无权限,对应数字 0) | 用于表示文件或目录的不同访问权限 | |||||
5.4文本与组相关
| 命令名 | 英文单词 | 功能 | 常见格式 | 常用选项 | 加选项后的功能 |
| cut | cut | 按指定分隔符切割文本行,并提取指定字段 | cut-d"分隔符"-f 字段号 文件名 | -d -f | -d::可自定义文本切割时所依据的符号; -f:用于指定要提取的字段位置;如果截取的字段连续,使用-隔开;如果截取的字段不连续,使用,隔开; |
| chown | change owner | 修改文件所属的用户和组 | chown所有者:组 文件或目录名 | -R | 递归修改目录及其子目录/文件所属的用户和组 |
| chgrp | change group | 修改文件的所属组 | chgrp组 文件或目录名 | -R | 递归修改目录及其子目录/文件的所属组 |
6、链接命令
6.1硬链接
硬链接是指向同一个 inode(索引节点)的不同目录条目(文件名)的数量;
• 创建硬链接命令:ln • 命令格式:ln 被链接的文件 创建硬链接文件名称
• 验证硬链接 • 查看inode号:ls -i
• 特点:
• 硬链接文件与源文件共享相同的inode和数据块;
• 删除源文件后,硬链接仍可访问数据(直到所有硬链接被删除);
• 不能跨文件系统(如无法从ext4分区链接到NTFS分区);
• 不能链接目录(防止文件系统循环问题);
6.2符号链接
符号链接又称之为软链接,是一种特殊的文件类型,它指向另一个文件或目录;
• 创建符号链接:
• 命令格式:ln -s 被链接的文件/目录(绝对路径) 创建软链接文件名称
• 验证符号链接:
• 查看符号链接指向:ls -l
• 查看inode号:ls -i
• 特点:
• 符号链接与源文件有不同的inode;
• 删除源文件后,符号链接失效(称为”断链”);
• 可以跨文件系统; • 可以链接目录;
7、网络相关命令
7.1网络基础术语
| 术语 | 作用 | 示例 |
| IP地址 | 设备在网络中的唯一逻辑标识 | 192.168.1.100 |
| 子网掩码 | 划分IP的网络段与主机段 | 255.255.255.0 |
| 网关 | 数据包转发到其他网络的出口 | 192.168.1.1 |
| DNS服务器 | 将域名解析为IP地址 | 8.8.8.8 (Google DNS) |
| MAC地址 | 网卡的物理唯一标识 | 00:1A:2B:3C:4D:5E |
7.2网络相关命令
| 命令名 | 英文单词 | 功能 | 常见命令 |
| ifconfig | ifconfig | 查看及临时配置网络接口参数 如:IP 地址、子网掩码、MAC 地址等等 | ifconfig |
| ipconfig | ipconfig | 查看 Windows 网络接口的配置信息 如:IP 地址、子网掩码、网关等等 | ipconfig |
| ping | ping | 测试网络连通性 通过发送ICMP数据包检查目标主机是否可达 | ping <目标地址> 如: ping www.baidu.com |
| ip | ip | 多功能网络管理工具 (如查看所有接口 IP 地址等等) | ip addr show |
7.3 IP 地址分配方式
静态 IP 地址分配
工作原理:由网络管理员手动为设备配置固定的 IP 地址、子网掩码、默认网关和 DNS 服务器地址等信息,地址长期不变
应用场景:适用于需稳定网络标识的设备,如服务器、网络打印机、监控设备等
优点:稳定性高,便于针对特定设备(如防火墙)进行管理和配置访问策略
缺点:手动配置工作量大,设备网络环境变更时(如子网调整)需重新设置,灵活性不足
静态 IP 命令行配置:
| 命令 | 功能 | 使用格式 |
| sudo nmcli connection modify | 以管理员权限修改指定网络连接的配置,可设置 IP 地址、网关、DNS 等参数 | sudo nmcli connection modify“连接名称” ipv4. addresses,IP地址/子网掩码 . ipv4. gateway .网关地址 ipv4. dnsDNS服务器地址、ipv4. method manual |
| sudo nmcli connection up | 以管理员权限重启指定的网络连接,使修改后的网络配置生效 | sudo nmcli connection up“连接名称” |
| nmcli connection show | 列出当前系统中所有网络连接配置信息 | nmcli connection show |
动态 IP 地址分配(DHCP)
工作原理:通过 DHCP 服务器自动为接入网络的设备分配 IP 地址,同时提供子网掩码、网关、DNS 等配置信息,地址可重复利用
应用场景:广泛用于家庭网络(如手机、电脑连 Wi-Fi)和企业办公网络
优点:自动配置,减少人工错误;高效利用 IP 资源,适合设备频繁上下线的动态网络
缺点:依赖 DHCP 服务器,若服务器故障,设备可能无法获取地址。
命令:
nmcli connection show
sudo nmcli connection modify
sudo nmcli connection up
动态IP地址工作流程:动态IP地址通过 DHCP的发现(Discover)->提供(Offer)->请求(Request)->确认 (Ack)四步流程(简称 “DORA”)完成分配。
| 步骤 | 触发条件 | 关键动作 | 结果 |
| Discover | 设备接入网络 | 客户端广播寻找服务器 | 服务器响应 Offer |
| Offer | 服务器收到 Discover | 服务器广播提供IP及配置 | 客户端选择IP并发送 Request |
| Request | 客户端选择 Offer中的IP | 客户端广播确认所选IP | 服务器验证并发送 Ack |
| Ack | 服务器验证 Request合法性 | 服务器最终分配IP,客户端应用配置 | 客户端正式接入网络,启动租期计时器 |
辅助命令man和history后面再讲。

2145

被折叠的 条评论
为什么被折叠?



