所以这似乎不是我的一个非常复杂的问题,但我找不到答案。我对 -p
选项在 Unix 中的作用感到困惑。我将它用于实验室作业,同时创建一个子目录,然后在该目录中创建另一个子目录。它看起来像这样:
mkdir -p cmps012m/lab1
这是在具有正常权限的私有(private)目录中(
rlidwka
)。哦,有人介意解释一下 rlidwka
的含义吗?我对 Unix 不是一个完全的菜鸟,但我并不真正熟悉这意味着什么。希望这不是一个太模糊的问题。 最佳答案
手册页是您可以找到的最佳信息来源......并且触手可及:man mkdir
产生这个关于 -p
的开关:
-p, --parents
no error if existing, make parent directories as needed
用例示例:假设我想创建目录
hello/goodbye
但不存在:$mkdir hello/goodbye
mkdir:cannot create directory 'hello/goodbye': No such file or directory
$mkdir -p hello/goodbye
$
-p
创建了 hello
和 goodbye
这意味着 命令将创建满足您的请求所需的所有目录,如果目录存在 则不会返回任何错误。
关于
rlidwka
,谷歌对首字母缩略词有很好的内存:)。我的搜索返回了例如:http://www.cs.cmu.edu/~help/afs/afs_acls.html Directory permissions
l (lookup)
Allows one to list the contents of a directory. It does not allow the reading of files.
i (insert)
Allows one to create new files in a directory or copy new files to a directory.
d (delete)
Allows one to remove files and sub-directories from a directory.
a (administer)
Allows one to change a directory's ACL. The owner of a directory can always change the ACL of a directory that s/he owns, along with the ACLs of any subdirectories in that directory.
File permissions
r (read)
Allows one to read the contents of file in the directory.
w (write)
Allows one to modify the contents of files in a directory and use chmod on them.
k (lock)
Allows programs to lock files in a directory.
因此
rlidwka
表示:所有权限。值得一提的是,正如@KeithThompson 在评论中指出的那样,并非所有 Unix 系统都支持 ACL。所以可能
rlidwka
概念在这里不适用。关于unix - mkdir 的 "-p"选项,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22737933/