后端开发工程师必备的 Linux 命令部分清单
🚀 后端开发工程师必备的 Linux 命令清单(附使用场景)
作为后端开发工程师,Linux 是我们最常打交道的系统。无论你是调试应用、排查问题,还是部署上线,掌握常用 Linux 命令都能极大提升效率。
本文整理了后端开发中最常用的 Linux 命令及典型使用方式,涵盖了 文件操作、进程管理、网络诊断、资源监控 等场景,建议收藏备用!
🗂 一、文件与目录操作
命令 | 作用 | 示例 |
---|---|---|
ls |
查看目录内容 | ls -lh 显示人类可读格式 |
cd |
进入目录 | cd /var/log |
pwd |
显示当前路径 | pwd |
cp |
复制文件或目录 | cp app.log /tmp/ |
mv |
移动/重命名 | mv a.txt b.txt |
rm |
删除文件/目录 | rm -rf /tmp/test |
cat |
查看文件内容 | cat config.yaml |
tail |
查看文件结尾 | tail -f app.log 实时跟踪日志 |
grep |
文本查找 | grep "ERROR" app.log |
📌 场景示例:
tail -n 100 -f /var/log/nginx/error.log | grep "timeout"
实时查看 nginx 日志中包含
timeout
的错误。
🧠 二、进程管理与服务排查
命令 | 作用 | 示例 | |
---|---|---|---|
ps |
查看进程 | `ps aux | grep java` |
top / htop |
动态查看资源 | top 交互查看 CPU/内存 |
|
kill |
杀进程 | kill -9 1234 强制结束 PID=1234 |
|
systemctl |
管理服务 | systemctl restart nginx |
📌 场景示例:
ps -ef | grep tomcat
查找正在运行的 tomcat 进程。
🌐 三、网络相关命令
命令 | 作用 | 示例 |
---|---|---|
curl |
发 HTTP 请求 | curl -i http://localhost:8080/health |
ping |
测试网络连通性 | ping baidu.com |
netstat |
查看端口与连接 | netstat -tulnp |
ss |
更快的端口查看工具 | ss -tuln |
telnet |
测试端口连接(需要安装) | telnet 127.0.0.1 6379 |
dig / nslookup |
DNS 解析 | dig google.com |
📌 场景示例:
curl -X POST http://localhost:8080/api/test -H "Content-Type: application/json" -d '{"id":1}'
模拟接口请求,调试接口。
📦 四、磁盘与内存查看
命令 | 作用 | 示例 |
---|---|---|
df -h |
查看磁盘使用 | df -h 显示挂载分区大小 |
du -sh |
查看目录占用 | du -sh /home/logs |
free -h |
查看内存 | free -h |
top / htop |
实时查看内存占用 | |
vmstat |
内存 & I/O 分析 | vmstat 1 5 |
📌 场景示例:
du -sh /var/log/*
找出哪个目录占用了最多磁盘空间。
🔒 五、权限与用户
命令 | 作用 | 示例 |
---|---|---|
chmod |
修改权限 | chmod +x start.sh |
chown |
修改所有者 | chown www-data:www-data file.txt |
whoami |
当前用户 | whoami |
sudo |
以管理员权限执行 | sudo systemctl restart nginx |
🛠 六、压缩与打包
命令 | 作用 | 示例 |
---|---|---|
tar |
打包与解压 | tar -czvf app.tar.gz app/ |
unzip / zip |
zip 文件操作 | unzip app.zip |
gzip / gunzip |
快速压缩 | gzip big.log |
📌 场景示例:
tar -zxvf app.tar.gz -C /opt/apps/
解压包到指定目录。
🔍 七、查找命令
命令 | 作用 | 示例 |
---|---|---|
find |
查找文件 | find . -name "*.log" |
locate |
快速查找(需更新索引) | locate nginx.conf |
📌 场景示例:
find /var/log -type f -mtime +7
查找 7 天前的日志文件。
🧪 八、开发与部署场景常用
命令 | 用途 | |
---|---|---|
java -jar |
启动 Spring Boot 应用 | |
nohup |
后台运行程序 | nohup java -jar app.jar > log.txt & |
tail -f |
跟踪日志输出 | |
docker |
常用容器命令 | |
scp |
跨机文件传输 | |
crontab |
定时任务 | |
env / export |
查看或设置环境变量 |
🧰 九、查看系统、环境、设备信息
命令 | 功能说明 |
---|---|
env |
查看环境变量资源 |
uptime |
查看系统运行时间、登录用户数、平均负载 |
lsusb -tv |
列出所有 USB 设备 |
lspci -tv |
列出所有 PCI 设备 |
head -n 1 /etc/issue |
查看操作系统版本(是数字 1,不是字母 l) |
uname -a |
查看内核、系统、主机名、CPU 架构等信息 |
cat /proc/cpuinfo |
查看 CPU 参数信息 |
cat /proc/partitions |
查看硬盘与分区信息 |
cat /proc/meminfo |
查看系统内存使用情况 |
cat /proc/version |
查看内核版本(类似 uname -r ) |
cat /proc/ioports |
查看设备 IO 端口占用情况 |
cat /proc/interrupts |
查看中断资源使用情况 |
cat /proc/pci |
查看 PCI 设备信息 |
cat /proc/swaps |
查看所有 swap 分区信息 |
cat /proc/cpuinfo | grep "model name" |
查看 CPU 型号 |
cat /proc/cpuinfo | grep "physical id" |
查看 CPU 物理 ID(判断物理 CPU 数量) |