Linux 常用操作

发布时间:2026/9/15 8:56:40

Linux 常用操作 1.基本操作文件与目录操作ls 列出目录下的文件mkdir 创建新文件夹, cd 切换目录, rm 删除文件,pwd 显示当前目录绝对路径 ,mv 移除文件或目录, cp 复制文件或目录进程操作ps 查看进程静态快照,top/htop 查看进程动态实时快照 ,kill 结束进程,pkill 结束进程相关所有内容网络连接相关netstat 检查网络端口连接状态 , ping 测试网络连通性,telnet 测试端口连通性 ,addr 查看网络地址,ssh 远程连接其他Linux服务器 ,curl 发出HTTP请求权限操作chmod 修改文件权限,sudo 管理员权限,chown 修改文件的所有者查看编译操作cat 显示文件所有内容less 分屏查看大文件tail -f 实时查看文件末尾追加的内容查用于查看系统日志nano / vim 终端里的文本编译器命令操作-n 刷新次数-p 指定进程-H 按线程展示-b 纯文本格式输出-d 自动刷新间隔时间-u 指定用户-c 显示进程全部命令-i 交互询问或屏蔽大小写-f 强制执行2.PS命令有哪些展示了什么命令-a 显示与终端相关进程,-u 显示与用户相关进程,-x 显示没有终端控制的进程,-o 自定义输出的格式,-r 显示正则运行的进程,-l 显示长格式的进程,-f 显示详细的进程,-e 显示系统所有进程展示USER进程的用户名PID进程IDPPID父进程ID%CPUCPU使用率%MEM内存占用率VSZ虚拟内存大小RSS物理内存大小STAT进程状态START进程开始时间TIME进程累计占用CPU时间COMMAND进程命令TTY终端设备3.top命令会展示什么每一项都呈现什么数据展示load average平均负载显示进程在1分钟、5分钟、15分钟的平均负载情况tasks任务包括正在运行、睡眠、停止、僵尸状态CPU usage包括CPU总使用率和每个CPU核心使用率Memory usage物理内存总量已使用量空闲量缓冲区Swap usage交换空间使用情况总量已使用剩余量进程列表PS中展示内容4.已知一个进程名如何杀死ps -ef | grep 进程名 找到PIDkill PIDkill -9 PID 强制杀死进程pklii 进程名 直接杀死进程5.如何查看进程状态ps -auxf | grep 进程名输入top得到实时进程状态的页面指定监控一个进程top -p PID监控某个进程里所有线程 top -H -p PID进程打印三次日志后自动退出top -b -n 3 top_snapshot.log6.Linux如何查看线程状态top -Hps -eT | grep 进程名、线程名7.如何查看网络连接状态netstat -napt8.怎么查看哪个端口被占用lsof -i :80netstat -napt | grep :80 9.端口通不通用什么命令telnet ip 端口号10.TCP命令查看是多少个CPU核心执行top命令后按1查看11.修改文件权限用什么命令0没有权限1执行权限2表示写权限4表示读权限chmod 400 file.txt 只读权限chmod 644 file.txt 所有者可读写其他人只读chmod 755 file.txt/ directory/ 所有者可读写所属组用户可读执行其他用户只读12.top命令和free命令查看内存有什么区别top命令不仅显示内存情况还有CPU使用情况任务情况free命令只显示内存使用情况物理内存total、used、free、buff/cache、shared、available交换内存total,used,free13.用shell命令替换一个文件中的字符sed -i s/old /new /g文件名14.sed 和awk有什么区别sed是对文本简单处理增删改查的命令awk是进行更复杂的文本操作包括字段操作、条件判断、循环等15.查找日志中某个字符串出现的次数/匹配行的长度统计包含某个字符串的每一行的长度不是字符串本身的长度grep string file | awk {print length}统计某个字符串在日志中出现的次数grep -o string file | wc -lgrep -c string fileLinux有一个日志文件日志文件里第三列是请求的耗时写一条shell命令查耗时最高的10条记录sort -k3 -nr 日志文件 | head -n 1016.假如CPU跑到100%你的解决思路是什么通过top命令定位到CPU高的进程PID通过top -H -p PID 找到占用PCPU高的线程ID判断线程调用栈Java进程把线程ID换成16进制查对应的线程堆栈C/C进程用 pref top -p 进程ID 观察热点函数和系统调用根据输出堆栈信息定位项目中的代码判断是死循环、热点计算或频繁系统调用导致CPU跑到100%17.如何查看负载情况通过什么指标查看执行uptime或top命令查看负载值负载值超过CPU核数的1.5倍会严重影响系统平均负载升高的情况CPU密集型进程、I/O密集型进程、大量等待CPU进程当平均负载升高后使用mpstat查看CPU的性能推断出CPU使用率导致的平均负载升高情况若用户层和系统层使用率很低导致平均负载升高的原因就是CPU使用率和I/O 等待使用pidstat -u -1 查看进程占比判断什么进程导致CPU使用率高导致平均负载升高18.怎么判断服务器内存是否够用如何查看服务器性能瓶颈是否是内存使用free命令查看available值长期很低表示内存不足通过free命令查看观察swap 空间使用过多表示不足使用 dmesg | grep -i out of memory查看存在OOM错误说明不足使用vmstat 1观察内存使用情况19.如何判断操作系统有没有在内存替换怎么统计内存替换的频率sar -B 1查看如果系统发生抖动能观察到pgscank/s没秒扫描的后台回收线程个数值很大大概率是直接内存回收导致的20.用Linux命令排查日志具体步骤以排查一个特定BUG为例用五步1.连接服务器切到日志在的路径:ssh username192.168.121.133cd /data/logs/user-service/2.确定日志文件名和大小# 查看当前目录下的日志文件列表并显示人类易读的大小如 50M, 2Gls -lh3.定位报错【根据手中的线索比如报错时间、订单号、用户 ID去捞日志】情况 A如果你正在复现 Bug看实时日志这时候去页面上点击按钮复现 Bug同时在终端盯着屏幕# 实时滚动查看日志并高亮显示带有 ERROR 的行tail -f app.log | grep --line-buffered -i error情况 B如果 Bug 已经发生搜历史日志根据已知的关键词如特定的订单号order_123去文件里搜# 搜索关键词并显示匹配行前后的各 10 行看上下文grep -C 10 order_123 app.log | less4.如果日志被压缩# 不解压直接搜索压缩包里的报错信息zgrep -C 5 NullPointerException app-2026-7-09.1.log.gz | less5.提取并下载日志# 把包含特定订单号及其前后10行的日志单独保存到一个新文件里grep -C 10 order_123 app.log backup_bug.log21.用日志排查BUG的顺序1.看前端报错找到BUG发送的精准时间234015看前端网络请求找到具体的URL关键参数HTTP状态码2.查网关/Nginx日志如果Nginx日志没有这个请求说明没到服务器卡在网络、DNS、防火墙判断状态码是4XX5XX状态码判断2XX 顺利 3XX 重定向 4XX 前端和测试问题5XX 后端问题200 成功201 新内容创建成功204 成功返回没有响应体Body301 永久重定向302 临时重定向304 服务器内容未修改在客户端缓存里400 报文语法错误401 未登录/未授权403 禁止访问404 资源不存在查URL是否错误405 请求方法不支持500 服务器内部错误 502错误网关503 服务器超载或停机504网关超时或挂了直接查Nginx的error.log3.抓取报错首行进入后端的应用日志app.log有TraceID直接grep TraceID,没有用订单号、用户ID等查找到ERROR或Exception4.分析异常堆栈找到ERROR后看错误堆栈找到报错信息或项目包名后的代码报错5.前后对照上下文用 grep -C 10 app.log | less找到具体问题22.用Linux操作如何让排查测试开发里遇到的具体问题1.功能测试复现 Bug 的瞬间想立刻看到后端吐出了什么错误tail -f app.log | grep --line-buffered -E ERROR|ExceptionBUG已存在根据用户 ID 或订单号捞出整段业务上下文?grep -C 10 order_id_20260713 app.log | less2.接口测试提取特定接口的请求与响应报文grep -A 5 /api/v1/pay access.log通过 TraceID 追踪微服务分布式链路?grep t-1234567890 /data/logs/*/*.log3.性能测试统计压测期间每分钟的 ERROR 数量监控报错趋势grep ERROR access.log | awk {print $1} | cut -d: -f1,2 | sort | uniq -c捞出 Nginx/Tomcat 日志中耗时最长的 Top 10 请求awk {print $NF, $0} access.log | sort -nr | head -n 10压测时 OOM内存溢出导致服务挂掉dmesg -T | grep -i killgrep -i oom /var/log/message
延伸阅读

更多相关文章

2026/9/14 18:54:06

如何让Kimi生成word文档?AI导出鸭苹果版将Kimi输出的混合标记实时解析为结构化数据,一键生成标准docx,无损保留公式与流程图。

如何让Kimi生成word文档?AI导出鸭苹果版将Kimi输出的混合标记实时解析为结构化数据,一键生成标准docx,无损保留公式与流程图。正文 Kimi(月之暗面)凭借超长上下文和强大的文件处理能力,成为许多用户撰写技术…

2026/9/14 20:49:04

人类认知起源与AI世界模型的深度解析

1. 认知起源的四大根动作解析人类认知的起点可以追溯到几个最基本的"根动作",这些动作构成了我们与世界交互的原始方式。在长期观察婴幼儿行为发展和原始部落研究后,我总结出以下四个核心动作:1.1 抓握与操控这是人类最早掌握的物理…

2026/9/14 20:25:37

LayaBox Android打包全流程与优化策略

1. LayaBox项目打包Android包的核心流程 LayaBox作为国内领先的HTML5游戏引擎,其Android打包功能经历了多次迭代优化。从3.2版本开始,LayaAir Native支持自动打包机制,让新手开发者也能一键生成APK。但实际项目中,我们往往需要更精…

2026/9/15 8:51:54

Ryzen AI MAX+395不是显卡:Windows 11统一内存与AI加速原理

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/15 8:51:54

固定资产从采购到入账怎么管理?申请、验收、建卡和财务确认

采购订单写了10台笔记本,到货后实际收了9台,另1台下周补发;发票又可能晚到。若采购、验收、资产卡和财务凭证各自独立录入,系统很容易出现“已经折旧却没验收”或“实物在用但台账没有”的断层。 以一张采购订单为例:…

2026/9/15 8:51:54

桥接模式实战:Java实现支付系统多维度解耦设计

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/15 4:54:30

拯救者Y7000黑屏故障排查与维修实战指南

1. 项目概述:一台黑屏的拯救者Y7000,到底卡在哪一步? 联想拯救者Y7000系列笔记本,从2018年第一代搭载i5-8300H开始,到后来的i7-9750H、i7-10750H、i5-11400H,再到2023年款的R7-7840HS,它始终是学…

2026/9/15 0:01:16

AI英语单词APP开发:自适应学习算法与移动端优化实践

1. 项目概述 作为一名在移动应用开发领域摸爬滚打多年的老手,我最近完成了一个AI英语单词APP的开发项目。这个项目将传统单词记忆方法与现代AI技术相结合,打造了一款能够智能适应不同用户学习习惯的英语学习工具。 市面上大多数单词APP都存在一个通病&a…

2026/9/15 0:01:16

Flutter与OpenHarmony结合开发手语学习APP实战

1. 项目背景与核心价值作为一名同时接触过Flutter和OpenHarmony的开发者,最近我完成了一个基于Flutter for OpenHarmony的手语学习APP实战项目。这个项目最大的特点在于实现了跨平台框架与国产操作系统深度结合的创新实践——用Flutter开发的应用能完美运行在OpenHa…

2026/9/15 0:01:16

六个月成为机器人工程师:从ROS2到SLAM的实战路径

1. 六个月的紧迫感从哪来:先搞清楚你要成为哪种机器人工程师说实话,六个月的期限并不是一个宽松的时间线。市面上任何一本正经的机器人学教材都超过五百页,ROS2的官方文档可以翻到你怀疑人生,再加上ABB、KUKA这些工业机器人厂家动…

2026/9/14 11:59:31

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/14 13:53:59

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/14 11:22:57

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码