Linux命令行创建文件夹,从基础到实用技巧

admin
Linux命令行创建文件夹以mkdir为核心命令,基础用法为mkdir 文件夹名,实用技巧包括:用-p参数递归创建多级目录(如mkdir -p dir1/dir2);-m可设置权限(如mkdir -m 755 dir);支持批量命名(如mkdir dir{1..3});-p还能避免目录已存在时报错,掌握这些技巧能高效管理文件系统,提升操作效率。

在Linux系统中,命令行操作是高效管理文件和文件夹的核心能力,无论是服务器运维、脚本开发还是日常使用,掌握文件夹创建的命令行方法都能大幅提升工作效率,本文将详细介绍Linux命令行下创建文件夹的核心命令mkdir,从基础用法到进阶技巧,助你轻松应对各种场景。

基础命令:mkdir——创建文件夹的利器

mkdir(Make Directory)是Linux系统中用于创建文件夹(目录)的专用命令,其基本语法非常简单,适合新手快速上手。

创建单个文件夹

最简单的用法是直接指定文件夹名称,mkdir会在当前路径下创建一个新文件夹。
示例
在当前目录下创建名为docs的文件夹:

Linux命令行创建文件夹,从基础到实用技巧

mkdir docs

执行后,可通过ls命令查看,当前目录下会出现docs文件夹。

创建多个文件夹

如果需要一次性创建多个文件夹,只需在命令中用空格分隔文件夹名称即可。
示例
同时创建logstempbackup三个文件夹:

mkdir logs temp backup

这相当于依次执行三个mkdir命令,但通过一次命令完成,更高效。

创建嵌套文件夹(多级目录)

当需要创建包含多层嵌套的文件夹时(如project/src/utils),直接使用mkdir会报错(因为父目录project/src不存在),此时需结合-p选项(--parents),自动创建不存在的父目录。
示例
创建嵌套文件夹project/src/utils

mkdir -p project/src/utils

projectproject/src已存在,-p选项会忽略已存在的目录,仅创建缺失的部分,避免报错。

进阶技巧:mkdir选项的灵活应用

mkdir命令支持多个选项,通过组合使用可实现更精细的控制,满足复杂场景需求。

-v(verbose)——显示创建过程

默认情况下,mkdir成功执行时不输出任何信息,使用-v选项,可以显示每个创建的目录名称,便于确认操作结果。
示例
创建test文件夹并显示创建过程:

mkdir -v test

输出:mkdir: created directory 'test'

-m(mode)——设置文件夹权限

Linux中文件和文件夹的权限通过r(读)、w(写)、x(执行)组合控制,-m选项允许在创建时直接指定权限(八进制表示)。
示例
创建data文件夹,并设置权限为750(所有者可读/写/执行,用户组可读/执行,其他用户无权限):

mkdir -m 750 data

可通过ls -ld data查看权限,输出类似drwxr-x--- 2 user group 4096 May 10 10:30 data

结合路径操作:绝对路径与相对路径

  • 绝对路径:从根目录开始的完整路径,不受当前目录影响。
    示例:在/home/user下创建docs文件夹:
    mkdir /home/user/docs
  • 相对路径:基于当前目录的路径,如(当前目录)、(上级目录)。
    示例:假设当前在/home/user,创建../backup(即/home/backup):
    mkdir ../backup

结合花括号扩展:批量创建有规律的文件夹

如果需要创建一系列名称有规律的文件夹(如dir1dir2dir3),可使用花括号扩展,避免重复输入。
示例
同时创建dir1dir3三个文件夹:

mkdir dir{1,2,3}

甚至支持嵌套扩展,如创建project/aproject/btest/atest/b

mkdir -p project/{a,b} test/{a,b}

常见错误与解决方法

忘记-p选项导致嵌套目录创建失败

错误示例

mkdir project/src/utils  # 若project/src不存在,报错:mkdir: cannot create directory 'project/src/utils': No such file or directory

解决:添加-p选项,自动创建父目录:

mkdir -p project/src/utils

权限不足导致无法创建

错误示例
/root目录下创建文件夹(普通用户无权限):

mkdir /root/newdir  # 报错:mkdir: cannot create directory '/root/newdir': Permission denied

解决:使用sudo提升权限:

sudo mkdir /root/newdir

文件夹名称包含特殊字符

若文件夹名称包含空格、、等特殊字符,需用引号包裹,避免命令解析错误。
示例
创建名为my documents的文件夹:

mkdir "my documents"

或使用转义字符:

mkdir my\ documents

实用场景示例

批量创建项目目录结构

开发一个Web项目时,需要创建标准的目录结构(如srcstaticlogsconfig等):

mkdir -p myweb/{src,static/{css,js},logs,config}

执行后,目录结构为:

myweb/
├── src/
├── static/
│   ├── css/
│   └── js/
├── logs/
└── config/

根据文件列表批量创建文件夹

假设有一个文件dirs.txt为待创建的文件夹名称(每行一个),可通过xargs批量创建:

cat dirs.txt | xargs mkdir

dirs.txt

temp
backup
archive

创建带时间戳的备份文件夹

备份时,常需要以时间命名文件夹(如backup_20231010),结合date命令动态生成:

mkdir -p backup_$(date +%Y%m%d)

$(date +%Y%m%d)会执行date命令并输出当前日期(如20231010),最终创建backup_20231010文件夹

文章版权声明:除非注明,否则均为xmsdn原创文章,转载或复制请以超链接形式并注明出处。

取消
微信二维码
微信二维码
支付宝二维码