linux shell

关注公众号 jb51net

关闭
首页 > 脚本专栏 > linux shell > Linux 命令mkdir

Linux 命令mkdir详细教程

作者:hweiyu00

mkdir命令是 Linux文件操作的基础,熟练掌握-p和-m选项可大幅提升目录管理效率,本文给大家介绍Linux 命令mkdir详细教程,感兴趣的朋友一起看看吧

Linuxmkdir命令详细教程

一、mkdir命令的基本功能

二、mkdir命令的语法格式

mkdir [选项] 目录名 [目录名...]

三、mkdir命令的使用场景与示例

1. 创建单个目录

# 示例1:在当前目录创建名为 "test" 的目录  
mkdir test  
# 示例2:在指定路径创建目录(需确保父目录存在)  
mkdir /home/user/project/data  

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  

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

# 示例1:创建目录并设置权限为 755(所有者可读可写可执行,其他用户可读可执行)  
mkdir -m 755 logs  
# 示例2:创建目录并设置权限为 644(所有者可读可写,其他用户可读)  
mkdir -m 644 documents  

4. 一次性创建多个目录

# 示例:同时创建 "src"、"docs"、"test" 三个目录  
mkdir src docs test  
# 结合 -p 递归创建多个目录树  
mkdir -p project/{src,docs,test}/img  

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

mkdir -v new_dir  
# 输出:创建目录 "new_dir"  

四、mkdir命令的权限与安全注意事项

  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 选项可大幅提升目录管理效率。在实际使用中,建议:

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

您可能感兴趣的文章:
阅读全文