本教程介绍了使用该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
使用时-p,mkdir仅当目录不存在时才会创建目录。
例如,如果您尝试创建已存在且未使用该-p选项的目录,则mkdir将打印File exists错误:
mkdir newdir
mkdir: cannot create directory 'newdir': File exists
如何在创建目录时设置权限
要在创建目录时设置权限,请使用-m(-mode)选项。传递权限的语法与chmod命令的语法相同。
在以下示例中,只有创建它的用户才能访问新目录:
mkdir -m 700 newdir
如果该-m选项未传递给mdkir,则新创建的目录将具有775或755权限,具体取决于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手册页。