Linux命令mkdir详细教程

Written by

in

文章目录
  • 目录
    • Linuxmkdir命令详细教程
      • 一、mkdir命令的基本功能
      • 二、mkdir命令的语法格式
      • 三、mkdir命令的使用场景与示例
      • 四、mkdir命令的权限与安全注意事项
      • 五、高级用法:结合其他命令使用
      • 六、常见错误与解决方案
      • 七、扩展:创建目录的其他方式
      • 八、总结

    • mkdir(Make Directory)是 Linux 系统中用于创建新目录(文件夹)的基础命令。
    • 它支持一次性创建单个或多个目录,以及递归创建多层目录结构,是文件系统操作中最常用的命令之一。
    • 资料已经分类整理好:https://pan.quark.cn/s/26d73f7dd8a7

    mkdir [选项] 目录名 [目录名...]
    • 常用选项
      • -p(–parents):递归创建目录,若父目录不存在则自动创建。
      • -m(–mode):创建目录时指定权限(如 -m 755)。
      • -v(–verbose):显示创建目录的详细过程。
      • --help:显示命令帮助信息。
      • --version:显示命令版本信息。

    1. 创建单个目录

    # 示例1:在当前目录创建名为 "test" 的目录  
    mkdir test  
    # 示例2:在指定路径创建目录(需确保父目录存在)  
    mkdir /home/user/project/data  
    • 输出:无提示,若目录已存在则报错 mkdir: 无法创建目录‘test’:文件已存在

    2. 递归创建多层目录(-p 选项)

    # 场景:创建目录树 "project/src/main/java",若父目录不存在则自动创建  
    mkdir -p project/src/main/java  
    # 等价于依次执行:  
    # mkdir project  
    # mkdir project/src  
    # mkdir project/src/main  
    # mkdir project/src/main/java  
    • 说明-p 选项避免了手动逐层创建目录的繁琐,尤其适合构建项目结构。

    3. 创建目录时指定权限(-m 选项)

    # 示例1:创建目录并设置权限为 755(所有者可读可写可执行,其他用户可读可执行)  
    mkdir -m 755 logs  
    # 示例2:创建目录并设置权限为 644(所有者可读可写,其他用户可读)  
    mkdir -m 644 documents  
    • 权限说明:权限值用三位八进制数表示,每位对应 所有者其他用户 的权限(r=4, w=2, x=1)。

    4. 一次性创建多个目录

    # 示例:同时创建 "src"、"docs"、"test" 三个目录  
    mkdir src docs test  
    # 结合 -p 递归创建多个目录树  
    mkdir -p project/{src,docs,test}/img  
    • 说明:使用大括号 {} 可简化多个目录的创建(需 shell 支持,如 bash)。

    5. 显示创建过程(-v 选项)

    mkdir -v new_dir  
    # 输出:创建目录 "new_dir"  
    • 场景:当批量创建目录时,通过 -v 确认操作是否成功。

    1. 权限限制

      • 只能在有权限的目录下创建新目录(通常需要对父目录有 w 权限)。
      • 根目录(/)下创建目录需使用 sudo
        sudo mkdir /data/backup  
    2. 默认权限与 umask

      • 新创建目录的默认权限由 umask 决定(默认 022),实际权限为 777 - umask
      • 示例:若 umask022,则默认权限为 755rwxr-xr-x)。
      • 查看当前 umaskumask,临时修改:umask 077(修改后新目录权限为 700)。
    3. 避免同名文件冲突

      • 若目录名与已有文件重名,mkdir 会报错,需先删除文件或重命名。

    1. touch 配合创建项目文件结构:

      mkdir -p project/{src,docs,test}  
      touch project/src/main.py project/test/test.py  
    2. 在脚本中动态创建目录

      # 脚本示例:根据日期创建备份目录  
      DATE=$(date +%Y%m%d)  
      mkdir -p backups/$DATE  
      cp important.file backups/$DATE/  
    3. 使用通配符创建批量目录

      # 创建以月份命名的目录:month_01, month_02, ..., month_12  
      mkdir month_{01..12}  

    错误信息 原因 解决方案
    mkdir: 无法创建目录‘dir’:权限不够 无父目录写入权限 使用 sudo 或切换到有权限的用户
    mkdir: 无法创建目录‘dir’:文件已存在 同名文件或目录已存在 重命名目录或删除已有文件
    mkdir: 无法创建目录‘/path/to/dir’:没有那个文件或目录 父目录不存在且未用 -p 添加 -p 选项递归创建

    1. 使用 cp 命令复制目录结构:

      cp -r template_dir new_project  # 复制目录及其内容  
    2. 使用 tree 命令查看目录结构(需先安装):

      sudo apt install tree  # Debian/Ubuntu  
      tree project  # 查看 project 目录的层级结构  

    mkdir 命令是 Linux 文件操作的基础,熟练掌握 -p-m 选项可大幅提升目录管理效率。在实际使用中,建议:

    • 复杂目录结构优先使用 -p 递归创建;
    • 重要目录通过 -m 显式设置权限;
    • 结合通配符、脚本实现批量操作。
      通过合理使用 mkdir,可高效构建项目目录、管理文件结构,避免因路径或权限问题导致的操作失误。

    到此这篇关于Linux 命令mkdir的文章就介绍到这了,更多相关Linux 命令mkdir内容请搜索风君子博客以前的文章或继续浏览下面的相关文章希望大家以后多多支持风君子博客!

    您可能感兴趣的文章:

    • linux的基本命令mkdir使用详解
    • Linux常用命令mkdir详解
    • Linux命令之mkdir 和 touch详解
    • Linux学习之mkdir命令详解
    • Linux中mkdir命令详解
    • 一个简单的linux命令 mkdir
    • 在Linux下用 mkdir 命令来创建目录和子目录的用法
    • linux中mkdir命令使用详解

    站内搜索