当前位置: 首页 > web >正文

Linux 基础命令大全

目录

    • 引言
    • 1. 文件和目录操作命令
      • ls - 列出目录内容
      • cd - 切换目录
      • pwd - 显示当前目录路径
      • mkdir - 创建目录
      • rmdir - 删除空目录
      • cp - 复制文件或目录
      • mv - 移动或重命名文件/目录
      • rm - 删除文件或目录
      • touch - 创建空文件或更新时间戳
    • 2. 文件查看和编辑命令
      • cat - 显示文件内容
      • more/less - 分页查看文件
      • head - 显示文件开头
      • tail - 显示文件结尾
      • vi/vim - 文本编辑器
      • nano - 简单文本编辑器
    • 3. 系统信息和监控命令
      • uname - 显示系统信息
      • whoami - 显示当前用户
      • df - 显示磁盘空间
      • du - 显示目录大小
      • free - 显示内存使用
      • ps - 显示进程
      • top - 实时监控进程
      • kill - 终止进程
    • 4. 用户和权限管理命令
      • sudo - 以超级用户执行命令
      • useradd - 添加用户
      • passwd - 设置密码
      • chmod - 更改文件权限
      • chown - 更改文件所有者
    • 5. 网络相关命令
      • ping - 测试网络连通性
      • ip - 显示网络接口信息
      • curl - 下载或测试 URL
    • 6. 文本处理和搜索命令
      • echo - 输出文本
      • grep - 搜索文本
      • find - 搜索文件
      • tar - 打包/解压文件
    • 7. 其他常用命令
      • man - 查看命令手册
      • history - 查看命令历史
      • shutdown/reboot - 关机/重启
    • 结语

作者:Grok AI
日期:2025年7月27日


引言

Linux 作为开源操作系统,已成为服务器、嵌入式系统和开发者的首选。掌握 Linux 的基础命令是每位初学者的必经之路。这些命令可以帮助你高效地管理文件、监控系统、处理文本等。本文将为你提供一个全面的 Linux 基础命令大全,按照类别分类整理,每个命令附带简短解释和实际示例。

本文适合初学者阅读,如果你已经熟悉某些命令,可以跳过直接查看示例。所有命令均在终端(Terminal)中执行。建议在虚拟机或云服务器上实践,以避免误操作。

注意:命令示例中使用 $ 表示普通用户提示符,# 表示 root 用户提示符。实际执行时无需输入这些符号。


1. 文件和目录操作命令

这些命令用于导航文件系统、管理文件和目录。

ls - 列出目录内容

  • 描述:显示当前目录下的文件和子目录列表。
  • 示例
    $ ls -l  # 以长格式显示,包括权限、所有者、大小等
    $ ls -a  # 显示隐藏文件(以 . 开头的文件)
    

cd - 切换目录

  • 描述:改变当前工作目录。
  • 示例
    $ cd /home/user  # 切换到 /home/user 目录
    $ cd ..          # 返回上级目录
    $ cd ~           # 返回用户主目录
    

pwd - 显示当前目录路径

  • 描述:打印当前工作目录的绝对路径。
  • 示例
    $ pwd  # 输出如 /home/user/documents
    

mkdir - 创建目录

  • 描述:新建一个或多个目录。
  • 示例
    $ mkdir new_folder        # 创建单个目录
    $ mkdir -p parent/child   # 递归创建多级目录
    

rmdir - 删除空目录

  • 描述:移除空的目录(非空目录需用 rm -r)。
  • 示例
    $ rmdir empty_folder
    

cp - 复制文件或目录

  • 描述:复制文件或目录到指定位置。
  • 示例
    $ cp file.txt /backup/     # 复制文件
    $ cp -r dir /backup/       # 递归复制目录
    

mv - 移动或重命名文件/目录

  • 描述:移动文件/目录,或重命名。
  • 示例
    $ mv old.txt new.txt       # 重命名文件
    $ mv file.txt /new_dir/    # 移动文件到新目录
    

rm - 删除文件或目录

  • 描述:移除文件或目录(小心使用,不可恢复)。
  • 示例
    $ rm file.txt              # 删除文件
    $ rm -r dir                # 递归删除目录及其内容
    $ rm -f file.txt           # 强制删除,无需确认
    

touch - 创建空文件或更新时间戳

  • 描述:创建新文件或修改文件时间戳。
  • 示例
    $ touch newfile.txt        # 创建空文件
    

2. 文件查看和编辑命令

用于查看文件内容或编辑文本。

cat - 显示文件内容

  • 描述:连接并显示文件内容。
  • 示例
    $ cat file.txt             # 显示文件内容
    $ cat file1.txt file2.txt  # 合并显示多个文件
    

more/less - 分页查看文件

  • 描述:分页显示文件内容(less 支持前后翻页)。
  • 示例
    $ more longfile.txt        # 分页查看,按空格翻页
    $ less longfile.txt        # 分页查看,支持搜索 (/关键字)
    

head - 显示文件开头

  • 描述:显示文件前几行(默认10行)。
  • 示例
    $ head -n 5 file.txt       # 显示前5行
    

tail - 显示文件结尾

  • 描述:显示文件后几行,常用于日志监控。
  • 示例
    $ tail -n 10 file.txt      # 显示后10行
    $ tail -f logfile.txt      # 实时监控文件变化
    

vi/vim - 文本编辑器

  • 描述:强大的文本编辑器(i 插入模式,:wq 保存退出)。
  • 示例
    $ vim file.txt             # 打开或创建文件进行编辑
    

nano - 简单文本编辑器

  • 描述:易用的编辑器,适合初学者(Ctrl+O 保存,Ctrl+X 退出)。
  • 示例
    $ nano file.txt
    

3. 系统信息和监控命令

查看系统状态和资源使用。

uname - 显示系统信息

  • 描述:显示内核版本、架构等。
  • 示例
    $ uname -a                 # 显示所有系统信息
    

whoami - 显示当前用户

  • 描述:打印当前登录用户名。
  • 示例
    $ whoami                   # 输出如 user
    

df - 显示磁盘空间

  • 描述:报告文件系统磁盘使用情况。
  • 示例
    $ df -h                    # 以人类可读格式显示(MB/GB)
    

du - 显示目录大小

  • 描述:估算文件或目录的磁盘使用量。
  • 示例
    $ du -sh /home             # 显示 /home 目录总大小
    

free - 显示内存使用

  • 描述:显示系统内存和交换空间使用情况。
  • 示例
    $ free -h                  # 以人类可读格式显示
    

ps - 显示进程

  • 描述:列出当前进程。
  • 示例
    $ ps aux                   # 显示所有进程详情
    

top - 实时监控进程

  • 描述:交互式显示进程、CPU、内存使用(q 退出)。
  • 示例
    $ top
    

kill - 终止进程

  • 描述:发送信号终止进程。
  • 示例
    $ kill 1234                # 终止 PID 为 1234 的进程
    $ kill -9 1234             # 强制杀死
    

4. 用户和权限管理命令

管理用户账户和文件权限。

sudo - 以超级用户执行命令

  • 描述:临时提升权限执行命令。
  • 示例
    $ sudo apt update          # 以 root 权限更新软件源(Ubuntu 示例)
    

useradd - 添加用户

  • 描述:创建新用户(需 root 权限)。
  • 示例
    # useradd -m newuser       # 创建用户并生成主目录
    

passwd - 设置密码

  • 描述:更改用户密码。
  • 示例
    $ passwd                   # 更改当前用户密码
    # passwd newuser           # 更改指定用户密码
    

chmod - 更改文件权限

  • 描述:修改文件/目录的读写执行权限。
  • 示例
    $ chmod 755 script.sh      # 设置所有者可读写执行,其他人可读执行
    $ chmod +x script.sh       # 添加执行权限
    

chown - 更改文件所有者

  • 描述:修改文件/目录的所有者和组。
  • 示例
    # chown user:group file.txt  # 更改所有者和组
    

5. 网络相关命令

基本网络诊断和配置。

ping - 测试网络连通性

  • 描述:发送 ICMP 包测试主机连通。
  • 示例
    $ ping google.com          # 测试与 google.com 的连通
    $ ping -c 4 google.com     # 发送4个包后停止
    

ip - 显示网络接口信息

  • 描述:显示/配置网络接口(取代 ifconfig)。
  • 示例
    $ ip addr show             # 显示所有接口 IP 地址
    

curl - 下载或测试 URL

  • 描述:从服务器传输数据。
  • 示例
    $ curl https://example.com # 下载页面内容
    $ curl -O file.zip https://example.com/file.zip  # 下载文件
    

6. 文本处理和搜索命令

处理文本文件和搜索内容。

echo - 输出文本

  • 描述:打印文本到终端或文件。
  • 示例
    $ echo "Hello World"       # 输出文本
    $ echo "Hello" > file.txt  # 重定向到文件
    

grep - 搜索文本

  • 描述:在文件中搜索匹配模式。
  • 示例
    $ grep "error" logfile.txt # 搜索包含 "error" 的行
    $ grep -r "pattern" /dir   # 递归搜索目录
    

find - 搜索文件

  • 描述:根据条件查找文件。
  • 示例
    $ find /home -name "*.txt" # 查找所有 .txt 文件
    $ find / -size +100M       # 查找大于100MB的文件
    

tar - 打包/解压文件

  • 描述:创建或提取归档文件。
  • 示例
    $ tar -czvf archive.tar.gz dir/  # 压缩目录
    $ tar -xzvf archive.tar.gz       # 解压
    

7. 其他常用命令

man - 查看命令手册

  • 描述:显示命令的详细手册页。
  • 示例
    $ man ls                   # 查看 ls 命令手册
    

history - 查看命令历史

  • 描述:列出最近执行的命令。
  • 示例
    $ history                  # 显示历史列表
    $ !123                     # 执行历史中第123条命令
    

shutdown/reboot - 关机/重启

  • 描述:关闭或重启系统。
  • 示例
    # shutdown -h now          # 立即关机
    # reboot                   # 重启系统
    

结语

以上是 Linux 基础命令的核心大全,这些命令覆盖了日常操作的绝大部分场景。记住,实践是最好的老师!建议在 Linux 发行版如 Ubuntu 或 CentOS 上多加练习。如果你遇到问题,可以使用 man 命令查看更多细节,或在社区如 Stack Overflow 寻求帮助。

如果想深入学习,推荐阅读《The Linux Command Line》书籍。欢迎在评论区分享你的经验!

http://www.xdnf.cn/news/16559.html

相关文章:

  • 内存泄漏问题排查
  • Context Engineering Notes
  • 【Golang】Go语言运算符
  • 迷宫生成与路径搜索(A算法可视化)
  • Triton IR
  • Libevent(4)之使用教程(3)配置
  • 如何使用ozone调试elf文件?
  • Dify 本地化部署深度解析与实战指南
  • LangChain实现RAG
  • 力扣 hot100 Day57
  • 第四科学范式(数据密集型科学):科学发现的新范式
  • Qt C++动态库SDK在Visual Studio 2022使用(C++/C#版本)
  • IIS发布.NET9 API 常见报错汇总
  • Java面试实战:从基础到架构的全方位技术交锋
  • add新增管理员功能、BaseController类的简介--------示例OJ
  • PDF转图片实用指南:如何批量高效转换?
  • AI入门学习-模型评估示例讲解
  • Deja Vu: 利用上下文稀疏性提升大语言模型推理效率
  • 【java】 IntelliJ IDEA高效编程设置指南
  • Day06–哈希表–242. 有效的字母异位词,349. 两个数组的交集,202. 快乐数,1. 两数之和
  • EMCCD相机与电可调变焦透镜的同步控制系统设计与实现
  • 基于Matlab自适应阈值分割算法的图像处理研究
  • 《Java 程序设计》第 7 章 - 继承与多态
  • 嵌入式学习日志————对射式红外传感器计次
  • 高速采集卡FPGA设计方案及代码
  • 【测试报告】博客系统(Java+Selenium+Jmeter自动化测试)
  • maven命令详解
  • Element表格单元格类名动态设置
  • 可控、安全、可集成:安防RTSP|RTMP视频播放模块工程实践参考
  • Android基础(一) 运行HelloWorld