做什么

创建一个或多个目录。

常用参数

参数 含义
-p 自动建中间层(不存在就建)
-m 755 同时指定权限
-v 显示过程

实战

mkdir myfolder
mkdir folder1 folder2 folder3              # 一次建多个
mkdir -p a/b/c/d                            # 不存在的中间层自动建
mkdir -p project/{src,test,docs,bin}        # ★ 大括号扩展,一行建多个子目录
mkdir -m 700 ~/.secret                      # 建时指定权限

{a,b,c}Bash 大括号扩展——一行建项目骨架:

mkdir -p myproject/{src/{api,web,lib},test,docs,configs}
# 建出来:
# myproject/
# ├── src/{api,web,lib}/
# ├── test/
# ├── docs/
# └── configs/

  • -p 时建已存在的目录会报错:

    mkdir existing
    # mkdir: cannot create directory 'existing': File exists
    

    -p 不报错(幂等)—— 脚本里推荐总用 -p

  • 父目录不存在没 -p 会失败:

    mkdir a/b/c     # a 不存在 → 报错
    mkdir -p a/b/c  # ✓