一、Bash Shell 命令知识框架体系
1、 进程管理命令
ps – 显示当前进程快照
· 用途:查看系统上运行的程序(进程)的静态信息,包括 PID、终端、CPU 时间等。
· 常用参数:
· -e:显示所有进程(等价于 -A)。
· -f:完整格式输出,包含 UID、PPID、C、STIME 等列。
· -ef:组合使用,输出所有进程的详细信息。
· -u <用户>:显示指定用户的进程。
· 示例:ps -ef 查看所有进程的完整列表。
top – 实时动态进程监控
· 用途:实时显示系统整体资源使用情况(CPU、内存)以及各进程的动态信息,交互式操作。
· 交互命令(在 top 界面中按下):
· u:按用户过滤进程。
· P:按 CPU 使用率排序。
· M:按内存使用率排序。
· k:终止进程(需输入 PID)。
· E:切换内存单位(KB → MB → GB)。
· q:退出。
· 输出解读:第一行显示时间、负载均值;第二行显示任务状态;第三行显示 CPU 细分;最后两行显示物理内存和交换分区使用情况。
kill – 向进程发送信号
· 用途:通过 PID 结束或控制进程(进程间通信)。
· 常用信号:
· 默认(TERM,15):正常终止进程。
· -9(KILL):强制终止(无法被进程捕获,慎用)。
· -1(HUP):重载配置。
· 示例:kill -9 3976 强制结束 PID 为 3976 的进程。
2、 磁盘与文件系统管理
mount – 挂载存储设备
· 用途:将外部设备(硬盘分区、U盘、光盘)挂载到虚拟目录中的挂载点。
· 常用参数:
· -t <类型>:指定文件系统类型(如 ext4、ntfs、vfat)。
· -o <选项>:指定挂载选项(如 rw 读写、ro 只读)。
· 示例:mount -t ext4 /dev/sdb1 /mnt/usb 将 /dev/sdb1 挂载到 /mnt/usb。
umount – 卸载已挂载设备
· 用途:从虚拟目录中移除设备,必须先卸载才能安全拔出。
· 用法:umount <挂载点> 或 umount <设备文件>。
· 注意:若设备繁忙,可使用 lsof 查看占用进程并处理。
df – 查看磁盘分区空间使用情况
· 用途:显示所有已挂载文件系统的总容量、已用、可用空间及使用百分比。
· 常用参数:
· -h:以人类可读格式(KB、MB、GB)显示大小。
· 示例:df -h 清晰查看各分区剩余空间。
du – 评估目录或文件的磁盘使用量
· 用途:统计指定目录(默认当前目录)下各子目录和文件的大小。
· 常用参数:
· -h:易读格式输出。
· -s:仅显示总计(不展开子目录)。
· -c:显示所有项的总计。
· 示例:du -sh /home 查看 /home 目录总大小。
3、 数据文本处理命令
sort – 排序文本行
· 用途:对文件或标准输入中的行进行排序(只影响显示,不改变原文件)。
· 常用参数:
· -n:按数值大小排序(默认按字典序)。
· -r:降序排列。
· -k:指定排序的列(字段)。
· -t:指定字段分隔符(默认为空白)。
· 示例:sort -nr numbers.txt 按数值降序排序。
grep – 文本搜索(正则表达式)
· 用途:在文件或输入中查找匹配模式的行并输出。
· 常用参数:
· -v:反向匹配(输出不包含模式的行)。
· -n:显示匹配行的行号。
· -c:只统计匹配的行数。
· -e:指定多个匹配模式(可多次使用)。
· -i:忽略大小写。
· -r:递归搜索目录下所有文件。
· 支持正则表达式:如 ^ 开头、$ 结尾、. 匹配任意字符等。
· 示例:grep -n “error” logfile.txt 显示包含 “error” 的行及其行号。
4.、压缩与归档命令
gzip – 文件压缩/解压缩
· 用途:使用 Lempel-Ziv 编码压缩单个文件,生成 .gz 后缀文件。
· 常用参数:
· -d:解压缩(等同于 gunzip)。
· -k:保留原文件(某些版本支持)。
· 示例:gzip file.txt 压缩成 file.txt.gz;gzip -d file.txt.gz 解压。
tar – 磁带归档(打包/解包)
· 用途:将多个文件或目录打包成一个归档文件(.tar),常结合压缩工具。
· 常用参数组合:
· -c:创建归档文件。
· -x:解包归档文件。
· -v:显示详细过程(verbose)。
· -f:指定归档文件名(必须紧跟)。
· -z:通过 gzip 压缩/解压(生成 .tar.gz)。
· -t:查看归档内容列表。
· 示例:
· 打包压缩:tar -czvf archive.tar.gz /home/user
· 解包解压:tar -xzvf archive.tar.gz
· 查看内容:tar -tvf archive.tar.gz | more
5.、辅助命令(拓展)
· lsof:列出当前系统打开的文件,可用于排查设备繁忙原因。
· |(管道):将前一个命令的输出作为后一个命令的输入,如 ps -ef | grep bash。
知识框架小结图(概念关系)
系统状态监控 ├── 静态 ── ps (查看当前进程) ├── 动态 ── top (实时交互) └── 进程控制 ── kill (发送信号) 磁盘管理 ├── 挂载/卸载 ── mount / umount ├── 空间查看 ── df (整体)、du (目录/文件) └── 文件定位 ── lsof (打开文件) 数据处理 ├── 排序 ── sort (数值/字典序、升/降序) ├── 搜索 ── grep (正则表达式、反向、计数) └── 压缩归档 ── gzip (单文件)、tar (多文件打包)常用场景速查表
目的 命令示例
查看所有进程详情 ps -ef
实时监控系统 top
强制结束进程 kill -9 PID
挂载 U 盘(ext4) mount -t ext4 /dev/sdb1 /mnt
卸载 U 盘 umount /mnt
查看磁盘剩余空间(易读) df -h
查看 /var 目录总大小 du -sh /var
对数字文件升序排序 sort -n num.txt
在日志中查找错误并显示行号 grep -n “ERROR” app.log
压缩目录为 tar.gz tar -czvf backup.tar.gz /home
解压 tar.gz 包 tar -xzvf backup.tar.gz
二、Xshell实操截图
1、ps查看进程和top实时监控进程
2、kill杀死进程
3、mount磁盘挂载
4、 umount移除设备
5、df和du查看磁盘空间
6、sort对数据文件进行排序,及各种参数
7、grep检索大数据文件特定信息,及各种参数
8、tar和gzip压缩、解压大型文件