前言
在Linux系统中,您可以从命令行或桌面文件管理器创建新目录。允许您创建目录(也称为文件夹)的命令是mkdir,这个命令简单使用很方便,类似于Windows、MS-DOS下的md命令(其实NT内核也兼容mkdir),但Linux内核下,有些参数需要用上,来更方便的创建目录和多层子目录。
那么我们就开始学习一下。
mkdir命令语法(兼容POSIX/UNIX/BSD所有规范)
Linux mkdir命令的语法如下:
mkdir [OPTION] [DIRECTORY]
该命令可以将一个或多个目录名作为其参数,一般操作就是在当前目录创建。
要使用该mkdir命令创建目录,您需要对父目录具有写权限。否则,您将收到权限被拒绝错误。
创建新目录
要使用mkdir命令在Linux中创建目录,只需将目录名称作为参数传递给mkdir命令:
mkdir 文件夹名称
您可以使用以下ls命令通过列出内容来验证目录是否已创建:
ls -l
drwxrwxr-x 2 username username 4096 Jan 20 03:39 文件夹名称
如果希望mkdir为创建的目录打印消息,则可以传递-v(–verbose)选项。
仅提供目录名称时,它将在当前工作目录中创建。当前工作目录是运行命令的目录。您可以使用该pwd命令显示当前工作目录的位置。要更改当前工作目录,请使用cd(更改目录)命令。
要在另一个位置创建目录,您需要提供父目录的绝对或相对文件路径。例如,要在目录中创建新目录,/tmp请键入:
mkdir /tmp/
如果您尝试在父目录中创建用户没有足够权限的目录,您将收到Permission denied错误:
mkdir /root/文件夹名称
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/Gothi
使用时-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}
这样一个子目录下就能有多个孙子目录。
总结
mkdir非常非常好用,用好了就是事半功倍,大家多体验,多尝试,在平时开发和维护中运用好!
评论0