源本科技 | 码上会

Linux 文件系统导航命令

2025/12/23
68
0

学习目标

  1. 7 个核心导航命令pwdlscdmkdirrmdircpmv

  2. Linux 路径表示法与快捷符号~...

  3. Linux 与 Windows 文件系统的关键差异

  4. 高效浏览目录结构的技巧(如 tree 命令)

  5. 理解移动 vs 复制的本质区别


为什么需要命令行导航?

尽管现代 Linux 发行版提供图形界面,但命令行仍是系统管理、自动化脚本和远程服务器操作的核心工具。掌握文件系统导航命令,能让你:

  • 快速定位配置文件(如 /etc/nginx/nginx.conf

  • 批量处理日志(/var/log/

  • 部署应用或调试服务

  • 在无图形界面的服务器上高效工作


7 大核心导航命令详解

1. pwd —— 显示当前路径

全称:Print Working Directory
作用:告诉你当前位于哪个目录

$ pwd
/home/kali/Templates

用途:确认当前位置,避免误操作


2. ls —— 列出目录内容

全称:List
作用:显示当前(或指定)目录下的文件和子目录

$ ls
Documents  Downloads  Pictures  Templates

常用选项:

选项

作用

ls -l

详细列表(权限、所有者、大小、修改时间)

ls -a

显示隐藏文件(以 . 开头的文件)

ls -lh

人类可读的文件大小(如 1.2K、5M)

ls /etc

列出 /etc 目录内容


3. cd —— 切换目录

全称:Change Directory
作用:进入其他目录

三种常用方式:

用法

示例

说明

相对路径

cd Downloads

进入当前目录下的 Downloads 子目录

绝对路径

cd /home/user/Documents

从根目录开始的完整路径

快捷符号

cd ~cd ..

使用特殊符号快速跳转(见下文)

小技巧

  • cd(不带参数)→ 自动回到 家目录

  • cd - → 切换到上一个工作目录


4. mkdir —— 创建新目录

全称:Make Directory
作用:新建一个文件夹

$ mkdir GeeksForGeeks
$ cd GeeksForGeeks
$ pwd
/home/user/GeeksForGeeks

进阶用法:

mkdir -p project/src/utils  # 递归创建多级目录

若目录已存在,会报错。使用 -p 可避免错误。


5. rmdir —— 删除空目录

全称:Remove Directory
作用:仅能删除完全为空的目录

$ rmdir GeeksForGeeks

❌ 如果目录中有文件,rmdir 会失败!
✅ 删除非空目录请用:rm -r directory_name(谨慎使用!)


6. cp —— 复制文件或目录

全称:Copy
作用:在保留原文件的同时,创建副本

# 复制单个文件
cp ~/Downloads/image.jpg ~/Pictures/

# 复制整个目录(需加 -r)
cp -r ~/Documents/Reports ~/Backup/

关键点:原文件不会被删除,目标位置获得一份新拷贝。


7. mv —— 移动或重命名

全称:Move
作用:将文件 / 目录从一处移到另一处,或更改名称

# 移动文件
mv ~/Downloads/image.jpg ~/Pictures/

# 重命名文件
mv old_name.txt new_name.txt

# 移动并重命名
mv report.pdf ~/Documents/final_report.pdf

本质mv 是“剪切 + 粘贴”,原位置文件消失


Linux 路径快捷符号

符号

名称

含义

示例

~

Tilde(波浪号)

当前用户的家目录

cd ~/home/alice

.

Dot(点)

当前目录

cp ./file.txt ./backup/

..

Double dot(双点)

上一级目录

cd .. → 返回父目录

# 从任意位置回家
cd ~

# 查看当前目录的隐藏文件
ls -a

# 返回上两级目录
cd ../..

tree 命令

可视化目录结构

虽然 ls 只显示一层内容,但 tree递归展示整个目录树

$ tree
.
├── Documents
│   ├── work
│   └── personal
├── Downloads
│   └── image.jpg
└── Pictures
    └── vacation

安装提示(若未预装):

# Ubuntu/Debian
sudo apt install tree

# CentOS/RHEL
sudo yum install tree

Linux/Windows

特性

Windows

Linux

根结构

多驱动器(C:\, D:\

单一根 /,所有设备挂载其下

路径分隔符

反斜杠 \

正斜杠 /

大小写敏感

❌ 不区分(File.txt = file.txt

区分大小写

文件权限

基于用户账户

精细控制(用户 / 组 / 其他 + 读 / 写 / 执行)

常见文件系统

NTFS, FAT32

ext4(主流)、XFS、Btrfs

设计理念

用户友好、图形优先

灵活强大、命令行优先

举例

  • Windows:C:\Users\Alice\Documents\report.docx

  • Linux:/home/alice/Documents/report.docx


重点总结

命令

功能

是否改变原文件

pwd

显示当前位置

ls

列出内容

cd

切换目录

mkdir

创建目录

✅(新增)

rmdir

删除空目录

✅(移除)

cp

复制

❌(原文件保留)

mv

移动 / 重命名

✅(原位置消失)

核心原则

  • 复制(cp)= 保留 + 新增

  • 移动(mv)= 剪切 + 粘贴


思考题

  1. 为什么 rmdir 不能删除非空目录?这种设计有什么安全意义?

  2. 在什么场景下你会使用 mv 来重命名文件,而不是先复制再删除?

  3. 如果你在 /var/log 目录下,想快速回到自己的家目录,有哪些方法?(至少写出两种)