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  # 显示当前终端的后台任务  
    
  • fgbg:在前台/后台切换任务,如同“任务调度员”
    $ 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 命令大全 的核心指令,如同获得了系统管理的“超级钥匙”。从基础导航到文本处理,从进程控制到网络诊断,这些命令构成了编程与运维工作的基石。建议读者通过以下方式深化学习:

  1. 实践优先:在虚拟机或本地终端中动手操作,验证命令效果;
  2. 组合使用:尝试通过管道符 | 和脚本串联多个命令,解决实际问题;
  3. 查阅手册:善用 man 命令,探索每个指令的高级选项。

Linux 的命令世界如同一座“知识迷宫”,但只要循序渐进,终将找到属于自己的“通关秘籍”。愿这些工具成为你编程旅程中的可靠伙伴!

最新发布