如何使用mkdir命令在Linux中创建目录

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

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

Linux mkdir命令语法

Linux mkdir命令的语法如下:

mkdir [OPTION] [DIRECTORY]

该命令可以将一个或多个目录名作为其参数。

要使用该mkdir命令创建目录,您需要对父目录具有写权限。否则,您将收到权限被拒绝错误。

如何创建新目录

要使用mkdir命令在Linux中创建目录,只需将目录名称作为参数传递给mkdir命令:

mkdir newdir

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

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

如果希望mkdir为创建的目录打印消息,则可以传递-v--verbose)选项。

仅提供目录名称时,它将在当前工作目录中创建。当前工作目录是运行命令的目录。您可以使用该pwd命令显示当前工作目录的位置。要更改当前工作目录,请使用cd(更改目录)命令。

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

mkdir /tmp/newdir

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

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

如何创建父目录

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

假设您要创建目录/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

您可以使用以下-p选项,而不是逐个创建所有缺少的父目录:

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

使用时-pmkdir仅当目录不存在时才会创建目录。

例如,如果您尝试创建已存在且未使用该-p选项的目录,则mkdir将打印File exists错误:

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

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

要在创建目录时设置权限,请使用-m-mode)选项。传递权限的语法与chmod命令的语法相同。

在以下示例中,只有创建它的用户才能访问新目录:

mkdir -m 700 newdir

如果该-m选项未传递给mdkir,则新创建的目录将具有775755权限,具体取决于umask值。

如何创建多个目录

要创建多个目录,请将目录的名称指定为参数,以空格分隔:

mkdir dir1 dir2 dir3

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

结论

到目前为止,您应该很好地理解如何使用Linux mkdir命令。有关该mkdir命令的更多信息,请参见mkdir手册页