Linux

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > Linux > LINUX中mkdir命令语法和实例

LINUX中关于mkdir命令语法和实例解读

作者:贵族白

Linux系统中,mkdir命令用于创建新的目录,支持多种选项如权限设置、递归创建等,对于新手和管理员都非常有用,命令的灵活性可以通过各种选项来实现不同的功能,包括设置权限、创建多级嵌套目录和处理隐藏目录等,掌握mkdir命令对于提高Linux操作效率和管理文件系统至关重要

在以其绝对功能和灵活性而闻名的 Linux 操作系统的动态世界中,有大量的命令集合可以让你完全掌握系统。

深入理解和掌握Linux中“mkdir命令”的使用是Linux之旅中不可或缺的一部分。

MKDIR 命令的语法

mkdir命令是“make directory”的缩写,是Unix/Linux命令行界面的重要组成部分。它使用户能够在其文件系统中创建新目录或文件夹,是新手用户和经验丰富的 Linux 管理员不可或缺的工具。

在最简单的形式中,mkdir 命令遵循以下语法:

mkdir [OPTION]... DIRECTORY...

mkdir 命令可用的选项

有几个选项可以与 mkdir 命令一起使用来自定义其功能:

深入了解 MKDIR 命令示例

使用 mkdir 创建简单目录

mkdir 命令最简单和最常见的用法是创建一个新目录:

mkdir new_directory

在此命令中,new_directory是要创建的目录的名称。执行此命令后,将在当前位置创建一个名为 new_directory 的新目录。

使用 mkdir 创建多个目录

mkdir 命令还可以同时创建多个目录

以下是操作方法:

mkdir dir1 dir2 dir3

在此命令中,dir1 和 dir3 是要创建的目录的名称。

dir2此命令将在当前位置创建这三个目录。

使用 mkdir 创建具有特定权限的目录

使用 --m 或 ---mode 选项,可以在创建目录时指定目录的权限:

mkdir -m 755 new_directory

在这里,new_directory的权限设置为“755”,这意味着所有者可以读取、写入和执行,而组和其他人只能读取和执行。

使用 mkdir 创建嵌套目录

-p 或 ---parents 选项允许根据需要创建父目录。

例如:

mkdir -p dir1/dir2/dir3

此命令检查 dir1 和 dir2 是否存在,如果它们不存在,则创建它们。然后,它在 dir2 中创建 dir3,该 dir3 内部dir2dir1.

将详细输出与 mkdir 一起使用

-v 或 ---verbose 选项使 mkdir 为其创建的每个目录打印一条消息,这对于故障排除或确认很有用:

mkdir -v new_directory

此命令将创建new_directory,然后打印一条指示其创建的消息。

创建名称中包含空格的目录

有时,我们想创建一个名称中带有空格的目录。

我们可以通过将目录名称括在引号中来实现这一点:

mkdir "new directory"

使用此命令,将创建一个名为 new 目录的新目录(在“new directory”和“directory”之间有一个空格)。

检查 mkdir 的版本

可以检查系统上当前安装的 mkdir 命令的版本。

这在出现兼容性问题或故障排除时可能会有所帮助。

要检查版本,可以使用:

mkdir --version

此命令将显示系统上当前使用的 mkdir 命令的版本信息。

显示 mkdir 的帮助

如果在使用 mkdir 命令时需要帮助或想要快速检查其选项,请使用 ---help 选项:

mkdir --help

此命令将输出一条帮助消息,显示 mkdir 命令的用法和可用选项

从文本文件创建目录

假设有一个文本文件,其中包含要创建的目录名称列表。

可以使用 xargs 命令和 mkdir 来执行此操作:

xargs mkdir < dir_list.txt

在此命令中,dir_list.txt是一个包含目录名称列表的文本文件。该命令将读取此文件并使用这些名称创建目录。

创建具有完整路径的目录

可以指定要在其中创建目录的完整路径。

当希望在当前工作目录以外的位置创建目录时,这特别有用:

mkdir /path/to/new_directory

在这里,new_directory是在指定的路径 /path/to/ 中创建的.

创建隐藏目录

在 Linux 中,任何以点 (. 开头的文件或目录名称都被视为隐藏。

要创建隐藏目录,请使用:

mkdir .hidden_directory

此命令将创建一个名为 .hidden_directory 的隐藏目录。可以使用 ls -a 查看此目录.

防止覆盖现有目录

-p 或 ---parents 选项也可用于防止 mkdir 命令覆盖现有目录:

mkdir -p existing_directory

使用此命令,如果existing_directory已存在,则不会覆盖它,从而防止任何潜在的数据丢失。

创建目录并设置组 ID

g 选项允许设置新目录的组 ID:

mkdir -m g=group_name new_directory

此命令创建new_directory并将其组 ID 设置为 group_name.

创建目录并使其成为临时目录

t 选项允许将目录设置为临时目录,Linux 处理该目录的方式与标准目录略有不同:

mkdir -m t new_directory

此命令将创建new_directory作为临时目录。

在临时目录中创建的文件通常会在一段时间内无法访问时被删除。

创建多级嵌套目录

-p 选项可用于通过单个命令创建多级嵌套目录:

mkdir -p Level1/Level2/Level3/Level4

此命令将创建四个级别的目录。

Level1 是顶级目录,Level4 是底层目录,Level2 和 Level1 是中间目录。Level3

为用户、组和其他人创建具有不同权限的目录

-m 选项允许为用户、组和其他人指定不同的权限:

mkdir -m u=rwx,g=rx,o= new_directory

在这里,new_directory具有用户的读取、写入和执行权限 (u)、组的读取和执行权限 (g) 以及其他人 (o) 的无权限。

以详细模式创建目录并忽略错误

-v 选项可以与 -p 结合使用以忽略错误并提供详细输出:

mkdir -pv existing_directory

在此命令中,如果existing_directory已存在,则 mkdir 命令不会返回错误,而是提供详细输出。

创建没有详细模式的目录

如果要以静默方式创建一个目录,而不进行任何详细输出,只需使用 mkdir 命令而不使用 -v 选项:

mkdir quiet_directory

此命令创建一个名为 quiet_directory 的目录,而不显示任何消息。

将大括号扩展与 mkdir 命令结合使用

大括号扩展是 Linux 中的一项强大功能,可以与 mkdir 命令一起使用来创建一系列目录:

mkdir dir{1..5}

此命令将创建五个目录,分别名为 dir1、dir2、dir3dir4 和 dir5 dir1dir2.

创建目录和设置粘性位

粘滞位是保护目录中文件的权限位。

如果已设置,则只能由文件的所有者或 root 用户删除或重命名文件。

以下是在创建目录时设置粘滞位的方法:

mkdir -m +t new_directory

使用此命令,将使用粘滞位集创建new_directory

创建目录并设置 Setuid 和 setgid 位

setuid 和 setgid 位可以在创建目录时设置,这会影响在其中创建的文件和目录的所有权。

-m 选项允许设置以下位:

mkdir -m u+s,g+s new_directory

此命令将使用setuid 和 setgid 位创建new_directory。

使用八进制模式创建具有不同权限的目录

虽然已经讨论了用于设置权限的符号模式,但 mkdir 命令也支持八进制模式:

mkdir -m 700 private_directory

这里,private_directory的权限设置为“700”(用户的读取、写入和执行,没有组和其他人的权限)。

创建目录并使其不可变

使目录不可变可防止其被删除,即使是 root 用户也是如此。

首先创建一个目录,然后使用 chattr 命令使其不可变:

mkdir new_directory
sudo chattr +i new_directory

这将创建new_directory,然后使其不可变。

创建目录并设置默认 ACL

如果文件系统支持访问控制列表 (ACL),可以在创建目录时设置默认 ACL:

mkdir new_directory
setfacl -d -m g::rwx new_directory

在这些命令中,首先创建new_directory,然后 setfacl 命令将目录的默认 ACL 设置为组的 rwx。

创建目录并设置 SELinux 上下文

如果启用了 SELinux 的系统上运行,则可以在创建目录时设置 SELinux 上下文:

mkdir new_directory
chcon -t httpd_sys_content_t new_directory

在这里,首先创建new_directory。然后,chcon 命令将 new_directory 的 SELinux 上下文更改为httpd_sys_content_t.

结论

在 Linux 中对 mkdir 命令的广泛探索阐明了它的强大功能和多功能性。

无论是创建单个目录、嵌套多个目录还是调整权限和属性,mkdir 命令仍然是每个 Linux 用户工具包中不可或缺的工具。

了解这些示例不仅可以提高管理目录的熟练程度,还可以增强整体命令行灵活性。继续利用 mkdir 命令来简化和增强 Linux 体验。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

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