翼度科技»论坛 云主机 服务器技术 查看内容

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

9

主题

9

帖子

27

积分

新手上路

Rank: 1

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

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


MKDIR 命令的语法

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

在最简单的形式中,mkdir 命令遵循以下语法:
  1. mkdir [OPTION]... DIRECTORY...
复制代码

    1. mkdir
    复制代码
    是指示系统创建新目录的命令。
    1. [OPTION]
    复制代码
    是一个可选参数,用于修改命令的行为。
    1. DIRECTORY
    复制代码
    是要创建的一个或多个目录的名称。

mkdir 命令可用的选项

有几个选项可以与
  1. mkdir
复制代码
命令一起使用来自定义其功能:


    1. -m, --mode=MODE
    复制代码
    :设置新目录的文件模式(权限),通常表示为数字字符串,如“755”或“644”。
    1. -p, --parents
    复制代码
    :如果指定的目录已存在,则此选项可确保不报告任何错误。它还允许根据需要创建父目录。
    1. -v, --verbose
    复制代码
    :提供详细的输出,解释
    1. mkdir
    复制代码
    命令正在做什么。
  • -
    1. --help
    复制代码
    :显示帮助消息并退出。
  • -
    1. --version
    复制代码
    :输出版本信息并退出。

深入了解 MKDIR 命令示例


使用 mkdir 创建简单目录

mkdir 命令最简单和最常见的用法是创建一个新目录:
  1. mkdir new_directory
复制代码
在此命令中,new_directory是要创建的目录的名称。执行此命令后,将在当前位置创建一个名为 new_directory 的新目录。

使用 mkdir 创建多个目录

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

以下是操作方法:
  1. mkdir dir1 dir2 dir3
复制代码
在此命令中,dir1 和 dir3 是要创建的目录的名称。

dir2此命令将在当前位置创建这三个目录。
使用 mkdir 创建具有特定权限的目录

使用 --m 或 ---mode 选项,可以在创建目录时指定目录的权限:
  1. mkdir -m 755 new_directory
复制代码
在这里,new_directory的权限设置为“755”,这意味着所有者可以读取、写入和执行,而组和其他人只能读取和执行。

使用 mkdir 创建嵌套目录

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

例如:
  1. mkdir -p dir1/dir2/dir3
复制代码
此命令检查 dir1 和 dir2 是否存在,如果它们不存在,则创建它们。然后,它在 dir2 中创建 dir3,该 dir3 内部dir2dir1.

将详细输出与 mkdir 一起使用

-v 或 ---verbose 选项使 mkdir 为其创建的每个目录打印一条消息,这对于故障排除或确认很有用:
  1. mkdir -v new_directory
复制代码
此命令将创建new_directory,然后打印一条指示其创建的消息。

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

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

我们可以通过将目录名称括在引号中来实现这一点:
  1. mkdir "new directory"
复制代码
使用此命令,将创建一个名为 new 目录的新目录(在“new directory”和“directory”之间有一个空格)。

检查 mkdir 的版本

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

这在出现兼容性问题或故障排除时可能会有所帮助。
要检查版本,可以使用:
  1. mkdir --version
复制代码
此命令将显示系统上当前使用的 mkdir 命令的版本信息。

显示 mkdir 的帮助

如果在使用 mkdir 命令时需要帮助或想要快速检查其选项,请使用 ---help 选项:
  1. mkdir --help
复制代码
此命令将输出一条帮助消息,显示 mkdir 命令的用法和可用选项

从文本文件创建目录

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

可以使用 xargs 命令和 mkdir 来执行此操作:
  1. xargs mkdir < dir_list.txt
复制代码
在此命令中,dir_list.txt是一个包含目录名称列表的文本文件。该命令将读取此文件并使用这些名称创建目录。

创建具有完整路径的目录

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

当希望在当前工作目录以外的位置创建目录时,这特别有用:
  1. mkdir /path/to/new_directory
复制代码
在这里,new_directory是在指定的路径 /path/to/ 中创建的.

创建隐藏目录

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

要创建隐藏目录,请使用:
  1. mkdir .hidden_directory
复制代码
此命令将创建一个名为 .hidden_directory 的隐藏目录。可以使用 ls -a 查看此目录.

防止覆盖现有目录

-p 或 ---parents 选项也可用于防止 mkdir 命令覆盖现有目录:
  1. mkdir -p existing_directory
复制代码
使用此命令,如果existing_directory已存在,则不会覆盖它,从而防止任何潜在的数据丢失。

创建目录并设置组 ID

g 选项允许设置新目录的组 ID:
  1. mkdir -m g=group_name new_directory
复制代码
此命令创建new_directory并将其组 ID 设置为 group_name.

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

t 选项允许将目录设置为临时目录,Linux 处理该目录的方式与标准目录略有不同:
  1. mkdir -m t new_directory
复制代码
此命令将创建new_directory作为临时目录。

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

-p 选项可用于通过单个命令创建多级嵌套目录:
  1. mkdir -p Level1/Level2/Level3/Level4
复制代码
此命令将创建四个级别的目录。

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

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

-m 选项允许为用户、组和其他人指定不同的权限:
  1. mkdir -m u=rwx,g=rx,o= new_directory
复制代码
在这里,new_directory具有用户的读取、写入和执行权限 (u)、组的读取和执行权限 (g) 以及其他人 (o) 的无权限。

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

-v 选项可以与 -p 结合使用以忽略错误并提供详细输出:
  1. mkdir -pv existing_directory
复制代码
在此命令中,如果existing_directory已存在,则 mkdir 命令不会返回错误,而是提供详细输出。

创建没有详细模式的目录

如果要以静默方式创建一个目录,而不进行任何详细输出,只需使用 mkdir 命令而不使用 -v 选项:
  1. mkdir quiet_directory
复制代码
此命令创建一个名为 quiet_directory 的目录,而不显示任何消息。

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

大括号扩展是 Linux 中的一项强大功能,可以与 mkdir 命令一起使用来创建一系列目录:
  1. mkdir dir{1..5}
复制代码
此命令将创建五个目录,分别名为 dir1、dir2、dir3dir4 和 dir5 dir1dir2.

创建目录和设置粘性位

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

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

以下是在创建目录时设置粘滞位的方法:
  1. mkdir -m +t new_directory
复制代码
使用此命令,将使用粘滞位集创建new_directory

创建目录并设置 Setuid 和 setgid 位

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

-m 选项允许设置以下位:
  1. mkdir -m u+s,g+s new_directory
复制代码
此命令将使用setuid 和 setgid 位创建new_directory。

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

虽然已经讨论了用于设置权限的符号模式,但 mkdir 命令也支持八进制模式:
  1. mkdir -m 700 private_directory
复制代码
这里,private_directory的权限设置为“700”(用户的读取、写入和执行,没有组和其他人的权限)。

创建目录并使其不可变

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

首先创建一个目录,然后使用 chattr 命令使其不可变:
  1. mkdir new_directory
  2. sudo chattr +i new_directory
复制代码
这将创建new_directory,然后使其不可变。

创建目录并设置默认 ACL

如果文件系统支持访问控制列表 (ACL),可以在创建目录时设置默认 ACL:
  1. mkdir new_directory
  2. setfacl -d -m g::rwx new_directory
复制代码
在这些命令中,首先创建new_directory,然后 setfacl 命令将目录的默认 ACL 设置为组的 rwx。

创建目录并设置 SELinux 上下文

如果启用了 SELinux 的系统上运行,则可以在创建目录时设置 SELinux 上下文:
  1. mkdir new_directory
  2. chcon -t httpd_sys_content_t new_directory
复制代码
在这里,首先创建new_directory。然后,chcon 命令将 new_directory 的 SELinux 上下文更改为httpd_sys_content_t.

结论

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

无论是创建单个目录、嵌套多个目录还是调整权限和属性,mkdir 命令仍然是每个 Linux 用户工具包中不可或缺的工具。
了解这些示例不仅可以提高管理目录的熟练程度,还可以增强整体命令行灵活性。继续利用 mkdir 命令来简化和增强 Linux 体验。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。


来源:https://www.jb51.net/server/3290276p4.htm
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

举报 回复 使用道具