赞
踩
在以其绝对功能和灵活性而闻名的 Linux 操作系统的动态世界中,有大量的命令集合可以让你完全掌握系统。深入理解和掌握Linux中“mkdir命令”的使用是Linux之旅中不可或缺的一部分。
mkdir
命令是“make directory”的缩写,是Unix/Linux命令行界面的重要组成部分。它使用户能够在其文件系统中创建新目录或文件夹,是新手用户和经验丰富的 Linux 管理员不可或缺的工具。
在最简单的形式中,mkdir
命令遵循以下语法:
mkdir [OPTION]... DIRECTORY...
mkdir
是指示系统创建新目录的命令。[OPTION]
是一个可选参数,用于修改命令的行为。DIRECTORY
是要创建的一个或多个目录的名称。有几个选项可以与 mkdir
命令一起使用来自定义其功能:
-m, --mode=MODE
:设置新目录的文件模式(权限),通常表示为数字字符串,如“755”或“644”。-p, --parents
:如果指定的目录已存在,则此选项可确保不报告任何错误。它还允许根据需要创建父目录。-v, --verbose
:提供详细的输出,解释 mkdir
命令正在做什么。--help
:显示帮助消息并退出。--version
:输出版本信息并退出。mkdir
命令最简单和最常见的用法是创建一个新目录:
mkdir new_directory
在此命令中,new_directory
是要创建的目录的名称。执行此命令后,将在当前位置创建一个名为 new_directory
的新目录。
mkdir
命令还可以同时创建多个目录。以下是操作方法:
mkdir dir1 dir2 dir3
在此命令中,dir1
和 dir3
是要创建的目录的名称。 dir2
此命令将在当前位置创建这三个目录。
使用 --m
或 ---mode
选项,可以在创建目录时指定目录的权限:
mkdir -m 755 new_directory
在这里,new_directory
的权限设置为“755”,这意味着所有者可以读取、写入和执行,而组和其他人只能读取和执行。
-p
或 ---parents
选项允许根据需要创建父目录。例如:
mkdir -p dir1/dir2/dir3
此命令检查 dir1
和 dir2
是否存在,如果它们不存在,则创建它们。然后,它在 dir2 中创建 dir3,该 dir3
内部dir2
dir1
.
-v
或 ---verbose
选项使 mkdir
为其创建的每个目录打印一条消息,这对于故障排除或确认很有用:
mkdir -v new_directory
此命令将创建new_directory
,然后打印一条指示其创建的消息。
有时,我们想创建一个名称中带有空格的目录。我们可以通过将目录名称括在引号中来实现这一点:
mkdir "new directory"
使用此命令,将创建一个名为 new 目录的新目录(在“new directory
”和“directory”之间有一个空格)。
可以检查系统上当前安装的 mkdir
命令的版本。这在出现兼容性问题或故障排除时可能会有所帮助。要检查版本,可以使用:
mkdir --version
此命令将显示系统上当前使用的 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
已存在,则不会覆盖它,从而防止任何潜在的数据丢失。
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
的目录,而不显示任何消息。
大括号扩展是 Linux 中的一项强大功能,可以与 mkdir
命令一起使用来创建一系列目录:
mkdir dir{1..5}
此命令将创建五个目录,分别名为 dir1、dir2、dir3
dir4
和 dir5
dir1
dir2
.
粘滞位是保护目录中文件的权限位。如果已设置,则只能由文件的所有者或 root 用户删除或重命名文件。以下是在创建目录时设置粘滞位的方法:
mkdir -m +t new_directory
使用此命令,将使用粘滞位集创建new_directory
。
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:
- mkdir new_directory
- setfacl -d -m g::rwx new_directory
在这些命令中,首先创建new_directory
,然后 setfacl
命令将目录的默认 ACL 设置为组的 rwx
。
如果启用了 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 体验。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。