【Linux基础】开发日常:盘点后端开发中最高频使用的10个Linux命令

简介: 本文为后端开发者整理了日常运维中最常用的10个Linux命令,涵盖文件查看、日志监控、进程管理、网络排查等核心场景。从`ls`、`cd`到`tail`、`grep`,再到`ps`、`netstat`、`top`等,结合实际案例讲解高频用法,助你高效应对服务器操作,提升开发效率。

前言

作为一名后端开发者,我们不仅要和代码打交道,更离不开服务器的运维与排查。在阿里云ECS或者公司内网服务器上,熟练掌握Linux命令能让我们的工作效率事半功倍。

很多初学者面对浩如烟海的Linux命令感到头大,但实际上,日常开发中高频使用的核心命令并不多。本文将结合实际开发场景,盘点最常用的10个Linux命令,助你快速上手服务器运维。


1. ls —— 查看文件列表

最基础但也最强大的命令。除了简单的列出文件,我们需要掌握几个高频参数。

  • 常用场景: 查看当前目录下有哪些文件,文件大小、权限和修改时间。
  • 代码示例:

Bash

# 列出所有文件(包含隐藏文件),并显示详细信息(权限、大小、时间)
ls -al
# 按修改时间倒序排列(最近修改的文件在最上面),常用于找最新的日志文件
ls -lt

2. cd —— 切换目录

你可能觉得这个太简单了,但有两个“快捷键”是老手最爱用的。

  • 常用场景: 在深层目录之间快速跳转。
  • 代码示例:

Bash

# 回到用户的主目录(/home/xxx)
cd ~
# 【神器】回到上一次所在的目录(在两个深层目录间反复横跳时非常有用)
cd -

3. tail —— 实时查看日志

对于后端开发来说,这是最重要的命令,没有之一。当服务出现Bug时,我们需要实时盯着日志看报错信息。

  • 常用场景: 监控生产环境正在输出的日志文件(如Spring Boot的catalina.outapp.log)。
  • 代码示例:

Bash

# 实时滚动显示 log.txt 文件的最后10行及其后续更新
tail -f log.txt
# 显示最后100行并实时滚动
tail -100f app.log

4. grep —— 文本搜索神器

当日志文件有几百兆时,肉眼看是不可能的。grep可以帮我们在海量文本中快速定位关键词(如 "Exception" 或 "Error")。

  • 常用场景: 查找日志中的报错堆栈,或者查找某个配置项。
  • 代码示例:

Bash

# 在 catalina.out 中查找包含 "Exception" 的行,并显示匹配行的后10行(-A 10)
grep -A 10 "Exception" catalina.out
# 配合 ps 命令查找进程(见下文)
ps -ef | grep java

5. ps —— 查看进程状态

服务起没起来?是不是挂了?有没有僵尸进程?全靠它。

  • 常用场景: 确认Java应用是否在运行,获取进程PID以便重启。
  • 代码示例:

Bash

# 查看系统所有进程
ps -ef
# 【常用】查找名字中包含 "java" 的所有进程
ps -ef | grep java

6. netstat —— 网络端口监听

有时候服务启动了,但外部访问不到,通常是端口问题。

  • 常用场景: 查看8080端口是否被占用,或者服务是否成功监听了端口。
  • 代码示例:

Bash

# 查看所有TCP端口的监听情况,并显示进程PID
netstat -ntlp
# 查看 8080 端口被哪个进程占用了
netstat -ntlp | grep 8080

(注:如果系统中没有netstat,可以使用ss -lntp代替)

7. top —— 系统资源监控

服务器突然变慢、CPU飙升100%,这时候就需要top出场了,它相当于Windows的任务管理器。

  • 常用场景: 排查性能瓶颈,看是哪个进程吃光了CPU或内存。
  • 代码示例:

Bash

# 进入实时监控界面(按 'q' 退出,按 'P' 依CPU排序,按 'M' 依内存排序)
top

8. kill —— 结束进程

当服务卡死或者需要重启更新时,我们需要根据PID结束进程。

  • 常用场景: 停止服务。
  • 代码示例:

Bash

# 优雅地关闭进程(发送SIGTERM信号,让程序有机会处理收尾工作)
kill 12345
# 强制杀死进程(慎用,相当于直接拔电源)
kill -9 12345

9. chmod —— 修改文件权限

脚本写好了却运行不了?通常是权限不够。

  • 常用场景: 给Shell脚本添加可执行权限。
  • 代码示例:

Bash

# 给 start.sh 脚本添加可执行权限
chmod +x start.sh
# 赋予所有权限(读、写、执行),通常用于测试环境解决权限问题
chmod 777 file.txt

10. tar —— 压缩与解压

Linux上最常用的压缩格式是 .tar.gz

  • 常用场景: 解压JDK安装包,或者打包日志文件下载到本地分析。
  • 代码示例:

Bash

# 解压 demo.tar.gz 到当前目录
tar -zxvf demo.tar.gz
# 将 logs 目录打包并压缩成 logs.tar.gz
tar -czvf logs.tar.gz logs/

结语

以上这10个命令涵盖了文件操作、日志查看、进程管理、网络排查等后端开发的核心场景。熟练掌握它们,基本上能解决90%的日常服务器运维问题。

互动话题:除了这些,你日常工作中还离不开哪个Linux命令?欢迎在评论区补充!

相关文章
|
13天前
|
数据采集 人工智能 安全
|
8天前
|
编解码 人工智能 自然语言处理
⚽阿里云百炼通义万相 2.6 视频生成玩法手册
通义万相Wan 2.6是全球首个支持角色扮演的AI视频生成模型,可基于参考视频形象与音色生成多角色合拍、多镜头叙事的15秒长视频,实现声画同步、智能分镜,适用于影视创作、营销展示等场景。
644 4
|
8天前
|
机器学习/深度学习 人工智能 前端开发
构建AI智能体:七十、小树成林,聚沙成塔:随机森林与大模型的协同进化
随机森林是一种基于决策树的集成学习算法,通过构建多棵决策树并结合它们的预测结果来提高准确性和稳定性。其核心思想包括两个随机性:Bootstrap采样(每棵树使用不同的训练子集)和特征随机选择(每棵树分裂时只考虑部分特征)。这种方法能有效处理大规模高维数据,避免过拟合,并评估特征重要性。随机森林的超参数如树的数量、最大深度等可通过网格搜索优化。该算法兼具强大预测能力和工程化优势,是机器学习中的常用基础模型。
348 164
|
7天前
|
机器学习/深度学习 自然语言处理 机器人
阿里云百炼大模型赋能|打造企业级电话智能体与智能呼叫中心完整方案
畅信达基于阿里云百炼大模型推出MVB2000V5智能呼叫中心方案,融合LLM与MRCP+WebSocket技术,实现语音识别率超95%、低延迟交互。通过电话智能体与座席助手协同,自动化处理80%咨询,降本增效显著,适配金融、电商、医疗等多行业场景。
359 155