
Linux常用命令实战与知识框架梳理 (基于Xshell操作)前言在Linux系统管理和日常开发中掌握一系列基础但强大的命令行工具是必不可少的。本文将结合我在Xshell中的实际操作对ps、top、kill、mount、umount、df、du、sort、grep、tar、gzip等命令进行梳理。特别是top、sort、grep这三个命令作为本次学习的重点我会详细演示其用法和参数。一、 命令实战与功能解析下面我将逐一介绍这些命令的用途、主要参数并展示在Xshell中的实际操作效果。ps和 top判断系统的状态ps(Process Status): 用于查看当前系统的进程状态。它通常只显示当前终端会话的进程。常用参数:ps aux: 显示所有用户的全部进程信息非常全面。ps -ef: 以完整的格式显示所有进程。Xshell操作示例:top(Table of Processes): 这是一个动态实时监控工具会持续刷新显示系统中各个进程的资源占用情况是判断系统负载和瓶颈的利器。(重点)主要交互命令 (在top运行后按):P: 按CPU使用率排序。M: 按内存使用率排序。q: 退出top。k: 终止一个进程。Xshell操作示例:kill杀死进程用途: 向指定的进程发送信号默认是终止信号(SIGTERM)。常用参数:kill -9 : 强制杀死进程 (SIGKILL)慎用。kill -15 : 优雅地终止进程 (SIGTERM)允许进程清理资源。Xshell操作示例:mount和 umount挂载与卸载设备mount: 用于挂载文件系统到指定目录。常用格式: mount /dev/sdb1 /mntumount: 用于卸载已挂载的文件系统。常用格式: umount /mntXshell操作示例:df和 du查看磁盘空间df(Disk Free): 查看文件系统的磁盘空间使用情况 (以块为单位)。常用参数: df -h(以人类可读的格式显示如G, M)。du(Disk Usage): 查看目录或文件的磁盘使用量。常用参数: du -sh /path/to/dir(查看某个目录的总大小)。Xshell操作示例:sort对数据文件进行排序用途: 对文本文件的行进行排序。主要参数:-n: 按数值大小排序。-r: 反向排序。-k: 指定排序的列。-t: 指定分隔符。练习题1创建一个文本文件每行一个数字然后用sort的各种参数排序。Xshell操作示例:grep检索大数据文件特定信息用途: 强大的文本搜索工具能在文件中搜索匹配指定模式的行。主要参数:-i: 忽略大小写。-v: 反向选择即显示不包含匹配模式的行。-r: 递归搜索目录下的所有文件。-n: 显示匹配行的行号。-E: 使用扩展正则表达式。–colorauto: 高亮显示匹配到的内容。练习题2使用grep命令进行不同格式的输出。Xshell操作示例:tar和 gzip压缩、解压大型文件tar: 用于打包和解包文件。常用参数:-c: 创建归档。-x: 解压归档。-v: 显示过程。-f: 指定归档文件名。-z: 通过gzip过滤归档 (用于压缩)。-j: 通过bzip2过滤归档。gzip: 用于压缩或解压.gz文件。常用命令: gzip filename, gunzip filename.gzXshell操作示例:二、 我的知识框架体系1、进程管理类命令这类命令的核心作用是监控和控制系统中运行的程序帮助我们快速判断系统运行状态。首先是 ps命令它可以输出某一时刻的系统进程快照。常用 ps -ef组合-e参数显示系统所有进程-f参数输出完整格式包含启动用户 UID、进程 IDPID、父进程 IDPPID、进程启动时间、启动命令等关键信息。实际使用中常配合 grep过滤特定进程比如 ps -ef | grep zhang就能查看所有属于 zhang 用户的进程。其次是 top命令这是动态实时监控的核心工具也是本次学习的重点。和 ps不同top会持续刷新进程信息。运行时可以按 P按 CPU 使用率排序M按内存使用率排序N按 PID 排序u筛选指定用户的进程k终止指定 PID 的进程q退出监控。顶部的系统概况尤其重要load average 的三个值分别代表最近 1、5、15 分钟的系统平均负载若 15 分钟负载持续过高说明系统存在性能问题%MEM列可以快速定位内存占用过高的进程按大写 E还能切换内存单位为 GB阅读更直观。最后是 kill命令用于向进程发送信号控制其生命周期。默认发送 TERM15信号会优雅终止进程允许进程清理资源如果遇到进程无响应才使用 kill -9 PID强制杀死但要谨慎使用避免数据丢失。操作时一定要先通过 ps或 top获取正确的 PID再执行对应命令。2、磁盘管理类命令这类命令用于管理存储设备的挂载和磁盘空间查看。mount命令负责将存储设备挂载到 Linux 虚拟目录下。手动挂载时需要指定文件系统类型-t参数比如 vfat、ext4、设备文件路径和挂载点例如挂载 U 盘可执行 sudo mount -t vfat /dev/sdb1 /media/usb。-r参数可以实现只读挂载-o可以添加额外挂载选项。umount命令用于卸载设备可以直接指定设备名或挂载点比如 umount /media/usb。如果卸载时提示“设备繁忙”说明有进程正在访问该设备可以用 lsof /media/usb查看占用进程停止对应进程后再执行卸载。df命令用来查看已挂载磁盘的整体使用情况加上 -h参数会以 G、M 等人类易读的单位显示。输出中的 Use%列是重点超过 80% 就需要考虑清理磁盘空间。du命令则用于查看指定目录或文件的磁盘占用-sh参数可以显示目录的总大小-c参数会显示所有文件的总大小。比如 du -sh /*可以快速查看根目录下各个文件夹的大小定位占用空间大的目录。3、文本处理类命令这类命令是处理日志和数据文件的核心也是本次作业的重点。sort命令用于对文本内容排序。默认情况下它会把数字当成字符按字典序排序要实现数值排序必须加 -n参数-r参数可以实现降序排列如果需要按指定列排序可以用 -k指定列号-t指定列分隔符。比如我们有一个每行一个数字的 nums.txt文件执行 sort -n nums.txt会按数字从小到大排序sort -nr nums.txt则会按从大到小排序。grep命令用于在文件中检索匹配指定模式的行是日志分析的利器。-i参数可以忽略大小写-v参数用于反向匹配输出不包含匹配模式的行-n参数会显示匹配行的行号-c参数统计匹配的行数-E支持扩展正则表达式^可以锚定行首$锚定行尾。比如 grep “Error” log.txt可以找到所有包含 Error 的行grep -nv “Error” log.txt则会输出所有不包含 Error 的行并显示行号非常适合排查日志问题。4、压缩归档类命令这类命令用于打包和压缩大型文件节省存储空间便于文件传输。gzip命令用于处理 .gz格式的压缩文件直接执行 gzip 文件名会压缩文件并生成 .gz后缀的压缩包同时删除原文件解压时使用 gzip -d 文件名.gz或者 gunzip 文件名.gz即可。tar命令用于文件打包常和压缩工具配合使用。-c参数创建归档-x参数解压归档-v参数显示过程-f参数指定归档文件名-z参数会调用 gzip 进行压缩或解压。最常用的组合是 tar -czvf 压缩包名.tar.gz 目录来打包并压缩tar -xzvf 压缩包名.tar.gz来解压。如果想查看归档内容而不解压可以使用 tar -tvf 压缩包名.tar.gz。三、 总结通过在Xshell中的实际操作我对这些Linux命令有了更深刻的理解。top、sort、grep这三个命令因其强大的功能和灵活性成为了我本次学习的重点。熟练掌握它们能极大地提高在Linux环境下处理数据和排查问题的效率。