如何在 Linux 中创建目录(mkdir 命令)

2023-11-10

在 Linux 系统中,您可以从命令行或借助桌面文件管理器创建新目录。允许您创建目录(也称为文件夹)的命令是mkdir.

本教程涵盖了使用的基础知识mkdir命令,包括日常示例。

Linux mkdir 命令语法#

语法为mkdir命令如下:

mkdir [OPTION] [DIRECTORY]

该命令采用一个或多个目录名称作为其参数。

如何创建新目录#

要在 Linux 中创建目录,请将目录名称作为参数传递给mkdir命令。例如,创建一个新目录newdir,您将运行以下命令:

mkdir newdir

您可以通过使用列出内容来验证该目录是否已创建ls 命令 :

ls -l
drwxrwxr-x 2 username username 4096 Jan 20 03:39 newdir

当仅提供目录名称而不提供完整路径时,它将在当前工作目录中创建。

The 当前工作目录是您运行命令的目录。要更改当前工作目录,请使用cd命令。

要在其他位置创建新目录,您需要提供父目录的绝对或相对文件路径。例如,要在以下目录中创建一个新目录/tmp您将键入的目录:

mkdir /tmp/newdir

如果您尝试在用户没有足够权限的父目录中创建目录,您将收到Permission denied error:

mkdir /root/newdir
mkdir: cannot create directory '/root/newdir': Permission denied

The -v (--verbose) 选项告诉mkdir为每个创建的目录打印一条消息。

如何创建父目录#

父目录是目录树中位于另一个目录之上的目录。要创建父目录,请使用-p option.

假设您要创建一个目录/home/linuxize/Music/Rock/Gothic:

mkdir /home/linuxize/Music/Rock/Gothic

如果任何父目录不存在,您将收到如下错误:

mkdir: cannot create directory '/home/linuxize/Music/Rock/Gothic': No such file or directory

不要一一创建缺少的父目录,而是调用mkdir命令与-p option:

mkdir -p /home/linuxize/Music/Rock/Gothic

当。。。的时候-p使用选项时,该命令仅在目录不存在时创建该目录。

如果您尝试创建一个已经存在的目录-p未提供选项,mkdir将打印File exists error:

mkdir newdir
mkdir: cannot create directory 'newdir': File exists

创建目录时如何设置权限#

要创建具有特定权限的目录,请调用mkdir命令与-m (-mode) 选项。分配权限的语法与chmod命令。

在下面的示例中,我们将创建一个新目录700权限,这意味着只有创建该目录的用户才能访问它:

mkdir -m 700 newdir

当。。。的时候-m不使用选项,新创建的目录通常有775 or 755权限,取决于umask value.

如何创建多个目录#

要创建多个目录,请将目录名称指定为命令参数,并用空格分隔:

mkdir dir1 dir2 dir3

The mkdir命令还允许您使用一个命令创建复杂的目录树:

mkdir -p Music/{Jazz/Blues,Folk,Disco,Rock/{Gothic,Punk,Progressive},Classical/Baroque/Early}

上面的命令创建以下内容目录树 :

Music/
|-- Classical
|   `-- Baroque
|       `-- Early
|-- Disco
|-- Folk
|-- Jazz
|   `-- Blues
`-- Rock
    |-- Gothic
    |-- Progressive
    `-- Punk

结论#

The mkdirLinux 中的命令用于创建新目录。

欲了解更多信息mkdir,访问mkdir 手册页 .

如果您有疑问,请随时在下面发表评论。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Linux 中创建目录(mkdir 命令) 的相关文章

  • 如何通过在每个选项卡上执行一些命令来在 mac os Lion 终端上自动打开多个选项卡?

    我需要自动打开带有多个选项卡的终端 并需要在其上执行多个命令 我知道在ubuntu下怎么做 但它不适用于 mac os 任何想法 gnome terminal tab e tail f somefile tab e some other c
  • 在 Mac OS X 上使用 docx2txt 和 Git 对 Word .docx 文件进行版本控制

    On Git网站上有关于 Microsoft Word 版本控制的详细说明 doc文件与catdoc http git scm com book en Customizing Git Git Attributes http git scm
  • pty 和管道之间的区别

    我一直在从本页的示例中阅读有关 ptys 的内容 http www roucha fr tech corner pty pdip html http www rkoucha fr tech corner pty pdip html 我有两个
  • OS X Mavericks 安装 rvm 警告

    在终端中运行时 curl L https get rvm io bash s 它似乎工作正常 但在最后的升级说明中它说 WARNING You have profile file you might want to load it to d
  • RVM设置ruby默认,当打开新终端时删除RVM设置,返回系统ruby

    我刚买了一台新 MacBook Pro 并尝试在系统中设置 RVM 我安装了RVM并将默认设置为 rvm list default 默认 Ruby 用于新 shell ruby 1 9 3 p194 x86 64 If RVM is在 sh
  • OSX - 始终隐藏某些文件

    我知道如何在终端中显示和隐藏隐藏文件 但是有没有办法在显示隐藏文件时隐藏某些文件 例如 DS STORE 可以这么说 使某些文件超级隐藏吗 Use chflags与隐藏选项 ie chflags hidden fileToHide从 Fin
  • Mac 终端 - 打开终端时出现“释放的指针未分配”错误

    在 mac 上打开终端时收到以下消息 上次登录 3 月 11 日星期二 14 33 24 在控制台上 登录 291 0x7fff78af9310 malloc 对象 0x7f974be006f0 的错误 正在释放的指针未分配 在malloc
  • Apple 听写 - 在应用程序中使用

    有什么方法可以在本机 Apple 应用程序中利用 Apple 的听写语音转文本功能吗 你的问题有点模糊 最好先知道你尝试使用或做什么 或者你想要实现什么目标 更常见的是关键字识别 API 但可以用于此目的的语音识别 API 是张开耳朵 ht
  • 为什么使用 $PATH 以及它是什么

    我对编程有点陌生 不是真的 但我仍在学习 我们不是吗 虽然我了解 Java 和 Python 并且了解 C C JS C HTML CSS 等 并且我可以在终端中很好地导航 但我不熟悉终端中的 PATH 是什么 我使用 Linux 终端和
  • 我安装了 nvm n,现在我不断收到“dyld:错误的外部重定位长度”

    我使用 sudo 安装了 nvm n 并决定通过在我的系统上下载多个版本的节点来测试它 当我尝试在节点版本之间切换时 我不断收到 权限被拒绝 的消息 所以我决定也使用 sudo 命令来切换版本 就在那时 一切都崩溃了 我不断得到 dyld
  • `npm i` 命令有什么作用?

    什么是i在 npm CLI 中执行命令 我看到它是这样使用的 npm i package The iflag 是一个别名install so npm i package 是相同的 npm install package 从文档中 npm i
  • 如何在终端中显示图像?

    是否有任何类型的实用程序可以用来将图像转换为 ASCII 然后在我的终端中打印 我寻找过 但似乎没有找到 一个名为cacaview http linux die net man 1 cacaview允许您执行此操作 它是交互式的 允许您平移
  • 使用通配符在 .zshrc 中获取多个文件

    我通过 oh my zsh 使用 z shell 我想从 zshrc 文件中获取多个别名文件 这样我就可以让事情井井有条 我已经为别名文件添加了前缀 alias 这样我就可以通配符加载它们 但是 打电话给source alias 只加载第一
  • 将终端颜色扩展到行尾

    我有一个生成 motd 的 bash 脚本 问题取决于某些终端设置 我不确定颜色是否会延伸到行尾 其他时候则不然 e g v s IIRC 一个只是普通的 gnome 终端 另一个是我的 tmux 术语 所以我的问题是如何才能将其扩展到 8
  • 在 Mac 上使用 JRE 打开 jar 文件

    我有一个 jar 文件 旨在通过命令行运行 我不打算在运行应用程序的机器上进行任何java开发 我的思考过程是 因此我应该只需要JRE而不是JDK 此外 JDK 大约是 JRE 的 4 倍 我不想下载它 在 Mac 上安装 JRE 时 它不
  • 如何从 Linux 的 shell 中删除所有以 ._ 开头的文件?

    确实如标题所示 我已将许多文件从 Mac 复制到 Raspberry Pi 这导致了许多以前缀开头的多余文件 我想删除以以下开头的文件夹中的每个文件 我该怎么做 尝试类似的方法 cd path to directory rm rf 或者 如
  • 如何不断刷新屏幕并实时更新[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想在linux上写一个C程序 不断刷新屏幕并实时更新 例如类似于top终端中的命令 谁能指出我正确的方向 为了保持它跨终端类型的可移
  • zsh:未找到命令:使用 Big Sur Mac 的终端上的 R

    我从官方 cran 网站安装了 R 我可以从 Rstudio 运行 R 但是当我尝试从终端使用 R 时 我得到以下结果 base ege Eges MBP R zsh command not found R base ege Eges MB
  • .profile 无法从 Mac 终端运行

    我有一个 profile 文件 我正在终端中读取并使用别名 但在某些时候 别名由于没有明确的原因而停止工作 其他命令仍在工作 为了快速修复 我删除了 rm 并在用户目录中重新创建了 profile 文件 我可以看到 至少在该目录中没有 ba
  • 如何执行“sudo nvm”?

    在我的 Mac 上 我想将一些需要 su 权限的包迁移到另一个节点版本 我使用 homebrew 安装 nvm 现在我需要执行 sudo nvm 或 reinstall packages将失败 me MacBook sudo nvm sud

随机推荐

  • Linux 中的 Grep 命令(搜索文件中的文本)

    Grep 是一个强大的文本搜索工具 Grep 的意思是 全局正则表达式打印 基本上 Grep 在文本文件中搜索指定的正则表达式 并将包含匹配项的任何行输出到标准输出 因此Grep命令可用于在一个或多个文本文件中搜索某种文本 单词 模式或句子
  • 通过 Break 和 continue 掌握 Bash 控制流程

    Bash 是一种功能强大的脚本语言 通常用于自动化和系统管理任务 Bash 脚本中最重要的概念之一是控制流 它是指脚本根据各种条件执行不同命令的方式 Bash 中两个关键的控制流语句是 break 和 continue 它们可以帮助您控制代
  • 如何在 Ubuntu 18.04 LTS 上使用 PHP-FPM 安装 Nginx

    本教程将帮助您在 Ubuntu 18 04 Bionic LTS 系统上使用 PHP FPM FastCGI 安装 Nginx Web 服务器 在本教程中 我们使用 PHP 7 3 并使用 PHP FPM 和 FastCGI 配置 Ngin
  • 如何在 Vim 中使用交换文件恢复文件

    Vim 是一款功能强大的文本编辑器 几十年来一直是开发人员和系统管理员的首选工具 然而 强大的能力也可能带来巨大的损失 没有什么比因系统崩溃或断电而损失数小时的工作时间更令人沮丧的了 幸运的是 Vim 有一个称为交换文件的内置功能 可以帮助
  • 如何在 CentOS/RHEL 7/6 上安装和配置 HAProxy

    HAProxy is a very fast and reliable solution for high availability load balancing It supports TCP and HTTP based applica
  • 如何在 CentOS/RHEL 9/8 上设置 CakePHP

    CakePHP 是一个强大而全面的 PHP 框架 遵循 MVC 模型 视图 控制器 方法 它因其基于约定的 Web 开发方法而受到好评 该方法可以促进快速的开发周期 在本文中 我们将指导您完成在 CentOS RHEL 8 9 系统上设置
  • 如何在 Fedora 36/35/34 上安装 Atom 文本编辑器

    Atom是一个现代的开源文本或源代码编辑器 它的核心是可破解的 这意味着这个工具可以定制来执行任何操作 它适用于 OS X Linux 和 Windows 系统 本文将帮助您在 Fedora Linux 系统上安装 Atom 文本编辑器 您
  • Python 程序查找给定数字的因数

    Python 是一种多功能且功能强大的编程语言 由于其可读性和高效性 已成为初学者和专家的最爱 这种综合性语言不仅限于网络开发或数据分析 相反 它已被证明是解决数学问题的绝佳工具 此类应用之一就是求一个数的因数 今天 我们将探索如何创建一个
  • 用于 MySQL 数据库备份的 Python 脚本

    在数字世界中 数据很有价值 因此 确保数据的安全性和可用性至关重要 这就是备份发挥作用的地方 本文将介绍如何创建一个Python程序来备份MySQL数据库 对于本教程 我们将使用 mysqldump 实用程序 一个强大的工具 可以从现有数据
  • 著名港口有哪些?

    期限 知名港口 在网络领域很常见 特别是与互联网协议有关 但这到底是什么意思呢 本文将解析著名端口的概念 探讨它们的目的 功能以及使用示例 了解端口及其意义 要完全掌握知名端口的概念 我们首先要了解计算机网络中端口的基本前提 在网络中 端口
  • 通过 SMTP 服务器发送电子邮件的 Python 脚本

    以编程方式发送电子邮件是 Web 应用程序 自动报告和通知的常见要求 Python 拥有庞大的库生态系统 可以轻松创建使用简单邮件传输协议 SMTP 发送电子邮件的脚本 在本文中 我们将逐步介绍为基于 SMTP 服务器的消息传递编写 Pyt
  • 如何在 CentOS/RHEL 7 上安装 Laravel 8

    Laravel是一个开源 PHP 框架 旨在更快地使用 PHP 开发 MVC Web 应用程序 本文将帮助您在 CentOS RHEL 7 系统上安装 Laravel 8 PHP 框架 第 1 步 设置 Yum 存储库 首先 您需要在系统中
  • 基础设施即代码及其重要性

    技术领域有如此多的不同进步 跟上所有这些进步可能会成为一项相当具有挑战性的任务 这就是为什么您需要选择最重要的事情 并找出哪些技术 趋势和进步对您的生活影响最大 基础设施即代码绝对是其中之一 无论你做什么 你都需要研究这个想法 从处理云系统
  • 如何在 Debian 10 (Buster) 上安装 PHP

    PHP 7 3 是可供安装的最新稳定版本 本教程将帮助您在 Debian 系统上安装 PHP 最新版本 现在按照本教程在 Debian 10 Buster 上安装 PHP Debian 10 仍在开发中 因此本教程是使用 Debian 10
  • 每个设计师都必须了解的顶级网页设计工具

    网络开发行业是多年来由于技术进步而蓬勃发展的行业之一 技术的不断发展趋势为快速蓬勃发展并致力于比实体店更成功的企业准备了舞台 因此 如果您是其中之一 希望将自己的创意技能转化为网页设计 那么您需要设计一个具有吸引人的字体 颜色 图像和图形的
  • Linux 中的 Curl 命令及示例

    curl是一个命令行实用程序 用于从服务器传输数据或向服务器传输数据 无需用户交互即可工作 和curl 您可以使用支持的协议之一下载或上传数据 包括 HTTP HTTPS SCP SFTP and FTP curl提供了许多选项 允许您恢复
  • 如何在 Ubuntu 18.04 上安装 Gradle

    Gradle 是一种通用构建工具 主要用于 Java 项目 它结合了 Ant 的最佳功能和Maven 与使用 XML 进行脚本编写的前辈不同 Gradle 使用Groovy 一种动态的 面向对象的编程语言 用于 Java 平台定义项目和构建
  • Linux中的Fdisk命令(创建磁盘分区)

    安装新的 SSD 或硬盘后 您需要做的第一件事就是对其进行分区 驱动器至少需要有一个分区 然后才能对其进行格式化并在其上存储文件 在 Linux 中 您可以使用多种工具来创建分区 其中fdisk是最常用的一种 在这篇文章中 我们将讨论fdi
  • Linux 中的 Rsync 命令及示例

    rsync是一个快速且多功能的命令行实用程序 用于通过远程 shell 在两个位置之间或从 到远程 Rsync 守护进程同步文件和目录 它通过仅传输源和目标之间的差异来提供快速增量文件传输 Rsync 可用于镜像数据 增量备份 在系统之间复
  • 如何在 Linux 中创建目录(mkdir 命令)

    在 Linux 系统中 您可以从命令行或借助桌面文件管理器创建新目录 允许您创建目录 也称为文件夹 的命令是mkdir 本教程涵盖了使用的基础知识mkdir命令 包括日常示例 Linux mkdir 命令语法 语法为mkdir命令如下 mk