Linux 命令大全(建议收藏)
💡一则或许对你有用的小广告
欢迎加入小哈的星球 ,你将获得:专属的项目实战(已更新的所有项目都能学习) / 1v1 提问 / Java 学习路线 / 学习打卡 / 每月赠书 / 社群讨论
- 新开坑项目:《Spring AI 项目实战》 正在持续爆肝中,基于 Spring AI + Spring Boot 3.x + JDK 21..., 点击查看 ;
- 《从零手撸:仿小红书(微服务架构)》 已完结,基于
Spring Cloud Alibaba + Spring Boot 3.x + JDK 17...
,点击查看项目介绍 ;演示链接: http://116.62.199.48:7070 ;- 《从零手撸:前后端分离博客项目(全栈开发)》 2 期已完结,演示链接: http://116.62.199.48/ ;
截止目前, 星球 内专栏累计输出 90w+ 字,讲解图 3441+ 张,还在持续爆肝中.. 后续还会上新更多项目,目标是将 Java 领域典型的项目都整一波,如秒杀系统, 在线商城, IM 即时通讯,权限管理,Spring Cloud Alibaba 微服务等等,已有 3100+ 小伙伴加入学习 ,欢迎点击围观
前言
在编程与系统管理的世界中,Linux 系统如同一位沉默的“幕后英雄”,而命令行工具则是与之对话的“通用语言”。无论是开发环境搭建、服务器运维,还是数据处理,掌握核心的 Linux 命令都能显著提升效率。本文将系统化梳理 Linux 命令大全 中的关键指令,通过分层讲解、案例演示和生动比喻,帮助编程初学者和中级开发者快速上手,并为进阶学习打下基础。
基础命令:探索系统的第一步
1. 导航与查看
Linux 系统的目录结构如同一座“迷宫”,以下命令是探索这座迷宫的“指南针”:
pwd
:显示当前路径,相当于问系统“我现在在哪个房间”$ pwd /home/user/projects
ls
:列出当前目录内容,如同用“手电筒”照亮房间内的物品$ ls -l # 详细模式展示文件属性
cd
:切换目录,就像“传送门”带你跳转到其他房间$ cd ../Documents # 进入上级目录的 Documents 文件夹
比喻延伸:想象 ls
是目录的“眼睛”,cd
是移动的“双腿”,而 pwd
是确认位置的“地图”,三者共同构建了对系统的空间认知。
2. 文件操作:创建、复制与删除
touch
:轻触空白文件
创建新文件如同“空白画布的诞生”:
$ touch report.txt # 创建名为 report.txt 的空文件
cp
:复制文件的“分身术”
$ cp report.txt backup_report.txt # 将 report.txt 复制为 backup_report.txt
mv
:移动与重命名的“变形金刚”
$ mv backup_report.txt final_report.txt # 重命名文件
$ mv final_report.txt ../archive/ # 将文件移动到父目录的 archive 文件夹
rm
:谨慎使用的“删除魔法”
删除文件需格外小心,如同“按下不可逆的删除键”:
$ rm -i file.txt # -i 参数强制确认
$ rm -r directory/ # -r 参数递归删除目录
案例场景:开发过程中,用 mv
将临时文件移动到版本控制目录,并用 rm
清理无用的日志文件,避免磁盘空间浪费。
进程管理:系统的“心跳监测仪”
1. 查看与终止进程
Linux 系统如同一个“交响乐团”,每个进程都是其中的“演奏者”。以下命令帮助你掌控“指挥权”:
ps
:查看当前进程的“快照”$ ps aux # 显示所有用户的进程
top
:实时监控系统资源的“仪表盘”$ top # 按 q 键退出
kill
:终止顽固进程的“暂停键”$ kill -9 <PID> # -9 参数强制终止进程
比喻:ps
是“速写画家”,top
是“动态监控摄像头”,而 kill
是“紧急制动器”。
2. 后台任务与作业控制
&
符号:将命令放入“后台”运行,释放终端$ python3 server.py & # 后台启动 Python 服务
jobs
:查看后台任务的“待办清单”$ jobs # 显示当前终端的后台任务
fg
和bg
:在前台/后台切换任务,如同“任务调度员”$ fg %1 # 将第 1 个后台任务调至前台
案例场景:开发时,用 &
在后台运行长时间任务(如数据爬取),同时继续编写代码,避免阻塞终端。
网络工具:连接世界的“桥梁”
1. 基础网络诊断
ping
:测试网络连通性的“心跳检测仪”$ ping -c 4 google.com # 发送 4 次请求测试连接
ifconfig
:查看网络接口的“身份证信息”$ ifconfig # 展示 IP 地址、网卡状态等
2. 端口与连接管理
netstat
:查看网络连接的“监控探头”$ netstat -tuln # 显示监听中的 TCP/UDP 端口
curl
:向服务器发送请求的“数据快递员”$ curl -X GET "https://api.example.com/data" # 发送 GET 请求
比喻:curl
类似“快递员”,而 netstat
是“交通监控中心”,共同支撑网络通信的“高速公路”。
文本处理:数据的“瑞士军刀”
1. 搜索与过滤
grep
:文本中的“放大镜”$ grep "error" log.txt # 在 log.txt 中搜索包含 "error" 的行
2. 文本编辑与替换
sed
:文本的“剪刀+胶带”$ sed 's/old/new/g' file.txt # 将文件中所有 "old" 替换为 "new"
awk
:数据处理的“瑞士军刀”$ awk '{print $1}' file.txt # 打印文件第一列内容
3. 管道符 |
:串联命令的“传送带”
$ cat log.txt | grep "warning" | sed 's/\t/ /g' # 连续处理日志文件
案例场景:分析日志时,用 grep
过滤关键信息,再通过 awk
提取特定字段,最后用 sort
排序,形成完整数据链。
高阶技巧:让命令更“聪明”
1. 通配符与参数
*
:匹配任意字符,如同“万能钥匙”$ rm *.tmp # 删除所有扩展名为 tmp 的文件
-v
参数:反向匹配,如“排除法”$ grep -v "success" log.txt # 排除包含 "success" 的行
2. 组合命令与脚本
将常用命令封装为脚本,如 backup.sh
:
#!/bin/bash
tar -czf backup_$(date +%Y%m%d).tar.gz /var/www
通过 chmod +x backup.sh
赋予执行权限,再用 ./backup.sh
运行。
结论
掌握 Linux 命令大全 的核心指令,如同获得了系统管理的“超级钥匙”。从基础导航到文本处理,从进程控制到网络诊断,这些命令构成了编程与运维工作的基石。建议读者通过以下方式深化学习:
- 实践优先:在虚拟机或本地终端中动手操作,验证命令效果;
- 组合使用:尝试通过管道符
|
和脚本串联多个命令,解决实际问题; - 查阅手册:善用
man
命令,探索每个指令的高级选项。
Linux 的命令世界如同一座“知识迷宫”,但只要循序渐进,终将找到属于自己的“通关秘籍”。愿这些工具成为你编程旅程中的可靠伙伴!