当前位置:首页>Linux>Linux常用命令详解(目录操作篇):从入门到熟练,这些命令你必须掌握

Linux常用命令详解(目录操作篇):从入门到熟练,这些命令你必须掌握

  • 2026-10-11 08:15:13
Linux常用命令详解(目录操作篇):从入门到熟练,这些命令你必须掌握

无论是Linux新手还是运维老手,目录操作都是最基础也最高频的操作。本文将系统讲解Linux下常用的目录操作命令,包括ls、cd、pwd、mkdir、rmdir、rm、cp、mv等,每个命令都配有详细选项说明和实际示例,帮助你快速上手并灵活运用。

📁 一、前言

在Linux系统中,一切皆文件,而目录(文件夹)则是组织这些文件的“容器”。熟练掌握目录操作命令,是学习Linux的第一步。本文将带你逐一攻破这些基础但强大的命令,让你在终端中如臂使指。

📂 二、目录操作核心命令

1. ls —— 列出目录内容

ls是最常用的目录查看命令,用于显示指定目录下的文件和子目录。

基本语法

bash

ls [选项] [目录名]

常用选项

选项作用
-l以长格式显示详细信息(权限、链接数、所有者、大小、修改时间)
-a显示所有文件,包括以.开头的隐藏文件
-h与-l配合,以人类可读的格式显示文件大小(如K、M、G)
-R递归显示子目录的内容
-t按修改时间排序(最新的在前)
-r反向排序
-S按文件大小排序
--color用颜色区分文件类型(多数发行版默认开启)

实用示例

bash

# 列出当前目录下的所有文件(不含隐藏)
ls

# 详细列出当前目录所有文件(含隐藏)
ls -la

# 详细列出并以人类可读大小显示
ls -lh

# 递归列出所有子目录内容
ls -R /home/user

# 按修改时间列出最近修改的文件
ls -lt

2. cd —— 切换当前工作目录

cd是最基础的目录跳转命令,用于改变当前所在的工作目录。

基本语法

bash

cd [目标目录]

特殊路径

路径含义
cd 或 cd ~切换到当前用户的家目录
cd /切换到根目录
cd ..切换到上级目录
cd -切换到上一次所在的目录(相当于电视遥控器的“返回”)
cd ../..切换到上两级目录

实用示例

bash

# 切换到 /var/log 目录
cd /var/log

# 返回用户家目录
cd ~

# 回到刚才的目录
cd -

# 向上跳两级
cd ../..

💡 技巧:按Tab键可以自动补全目录名,按两次Tab会列出所有可能的匹配项。


3. pwd —— 显示当前所在路径

pwd(Print Working Directory)输出当前工作目录的绝对路径,非常实用。

基本语法

bash

pwd [选项]

常用选项

选项作用
-P显示物理路径,不显示软链接(符号链接)的真实路径
-L显示逻辑路径,即包含软链接的路径(默认行为)

实用示例

bash

# 显示当前绝对路径
pwd
# 输出示例:/home/username/Documents

# 进入一个软链接目录后查看物理路径
cd /tmp/link_to_var
pwd -P   # 输出:/var

4. mkdir —— 创建目录

mkdir(Make Directory)用于创建新的空目录。

基本语法

bash

mkdir [选项] 目录名...

常用选项

选项作用
-p递归创建多级目录,如果父目录不存在则自动创建
-m创建时直接设置目录权限(如chmod格式)
-v显示创建过程的详细信息

实用示例

bash

# 创建单层目录
mkdir myfolder

# 递归创建多级目录(如 project/src/assets)
mkdir -p project/src/assets

# 创建权限为 755 的目录
mkdir -m 755 public_dir

# 创建时显示过程
mkdir -v -p a/b/c
# 输出:mkdir: created directory 'a'
#       mkdir: created directory 'a/b'
#       mkdir: created directory 'a/b/c'

5. rmdir —— 删除空目录

rmdir只能删除空目录,如果目录非空会报错。

基本语法

bash

rmdir [选项] 目录名...

常用选项

选项作用
-p递归删除空目录链(如上两级都为空则一并删除)
-v显示删除过程

实用示例

bash

# 删除空目录
rmdir empty_folder

# 递归删除 a/b/c(如果c为空则删除c,之后若b为空则删除b,以此类推)
rmdir -p a/b/c

# 尝试删除非空目录会报错(需要使用 rm -r)
rmdir non_empty  # 错误:目录非空

⚠️ 注意:日常使用中更常用rm -r来删除非空目录,rmdir主要用于专门的空目录清理场景。


6. rm —— 删除目录或文件

rm(Remove)可以删除文件和目录,功能强大但危险,需谨慎使用。

基本语法

bash

rm [选项] 文件或目录...

常用选项(针对目录操作)

选项作用
-r 或 -R递归删除目录及其内容(删除目录必需)
-f强制删除,忽略不存在的文件,不提示确认
-i交互式删除,每次删除前都提示确认
-v显示删除的详细信息

实用示例

bash

# 递归删除目录(会提示确认,除非使用-f)
rm -r mydir

# 强制递归删除(不提示,非常危险!)
rm -rf mydir

# 交互式删除每个文件/目录
rm -ri old_data/

# 删除前确认,但跳过不存在的文件
rm -rfv temp_dir

# 安全删除:先确认再删除(别名建议)
alias rm='rm -i'   # 设置为每次删除都询问

🚨 安全提醒:rm -rf /*会删除整个系统,切勿手误!删除前建议先用ls确认路径。


7. cp —— 复制目录

cp(Copy)用于复制文件或目录。复制目录时需要使用递归选项。

基本语法

bash

cp [选项] 源路径 目标路径

常用选项(针对目录操作)

选项作用
-r 或 -R递归复制目录及其全部内容(复制目录必需)
-a归档模式(等于-dR --preserve=all),保留权限、时间戳、链接等属性
-u仅在源文件比目标新或目标不存在时复制(更新操作)
-v显示复制过程
-i交互模式,覆盖前提示
-p保留文件属性(模式、所有权、时间戳)

实用示例

bash

# 复制整个目录(包括所有子文件)
cp -r docs/ docs_backup/

# 复制目录并保留所有属性
cp -a project/ project_backup/

# 复制目录,覆盖前询问
cp -ri source_dir/ dest_dir/

# 只复制更新的文件(增量备份)
cp -ru /home/user/data/ /backup/data/

# 复制时显示每个文件名
cp -rv images/ /mnt/usb/

8. mv —— 移动或重命名目录

mv(Move)用于移动目录(或文件)到另一个位置,或者重命名目录。

基本语法

bash

mv [选项] 源目录 目标目录

常用选项

选项作用
-i交互模式,覆盖前提示
-u仅在源比目标新或目标不存在时移动
-v显示移动过程
-n不覆盖已存在的目标

实用示例

bash

# 重命名目录
mv old_name_dir new_name_dir

# 移动目录到另一个路径下
mv myfolder /home/user/backup/

# 移动并显示过程
mv -v work/ /tmp/
# 输出:renamed 'work/' -> '/tmp/work/'

# 移动时避免覆盖同名目录
mv -n existing_dir /backup/

# 交互式移动(覆盖前确认)
mv -i temp_dir /target/

🧠 三、常见选项组合速查表

命令场景推荐命令说明
查看当前目录详细内容ls -lh显示大小易读的详细列表
查看包括隐藏文件ls -la常用别名ll(部分系统已内置)
快速返回用户主目录cd ~ 或 cd最简方式
创建多级目录mkdir -p a/b/c自动创建中间目录
删除非空目录rm -rf dir⚠️ 谨慎使用,先用ls确认
复制整个目录cp -r source dest或使用cp -a保留属性
安全复制/移动(提示覆盖)cp -i / mv -i避免误覆盖
备份目录并显示进度cp -rv source dest/可看到每个文件
查看当前路径pwd有时可结合-P查看真实路径

🔐 四、安全操作建议

  1. 慎用 rm -rf:执行前先用ls确认路径是否正确,也可先echo展开通配符。

  2. 善用 -i 选项:对rm、cp、mv设置-i别名(alias rm='rm -i')可防止误删。

  3. 理解绝对路径与相对路径:

    • 绝对路径:以/开头(如/home/user/data)

    • 相对路径:不以/开头(如../docs、./images)

  4. 使用 Tab 补全:减少输入错误,提高效率。

  5. 测试危险命令:先用echo或ls测试通配符扩展结果。


📚 五、总结与练习

掌握程度自测

  • 能否用一条命令创建~/project/src/assets三级目录?

  • 能否复制目录时保留所有权限和时间戳?

  • 能否在不进入目录的情况下查看其包含的文件数量?

  • 知道如何从任意路径快速回到上次所在的目录吗?

答案提示

  1. mkdir -p ~/project/src/assets

  2. cp -a source_dir dest_dir

  3. ls -l 目标目录 | grep "^-" | wc -l(统计文件个数,不包含子目录)

  4. cd -


Linux目录操作命令是通往系统管理的钥匙,通过反复练习,你会发现终端操作的快捷与强大。希望本文能为你打下坚实的基础。如果你有任何问题或想探讨更多用法,欢迎在评论区留言!

下一期预告:Linux文件操作命令深度解析(touch、cat、less、head、tail等),敬请期待!


📌 本文首发于CSDN,转载需注明出处。如果你觉得有用,请点赞、收藏、关注三连支持一下~

最新文章

随机文章