Так что это не кажется мне ужасно сложным вопросом, но я не могу найти на него ответа. Я не понимаю, что эта -p
опция делает в Unix. Я использовал его для лабораторного задания при создании подкаталога, а затем еще одного подкаталога в нем. Выглядело это так:
mkdir -p cmps012m/lab1
Это частный каталог с обычными правами ( rlidwka
). О, и не мог бы кто-нибудь дать небольшое объяснение того, что rlidwka
означает? Я не новичок в Unix, но я не совсем понимаю, что это значит. Надеюсь, это не слишком расплывчатый вопрос.
unix
command-line
command-line-arguments
directory-structure
пользователь3476866
источник
источник
man mkdir
отвечу на ваш вопрос. Что касается "rlidwka", я понятия не имею; вам нужно дать нам больше контекста.Ответы:
Страницы руководства - лучший источник информации, который вы можете найти ... и всегда у вас под рукой:
man mkdir
вот что о-p
переключателе:Пример использования: предположим, я хочу создать каталоги,
hello/goodbye
но их нет:-p
создал как, такhello
иgoodbye
Это означает, что команда создаст все каталоги, необходимые для выполнения вашего запроса, не возвращая никаких ошибок, если этот каталог существует .
О
rlidwka
, у гугла очень хорошая память на аббревиатуры :). Мой поиск вернул это, например: http://www.cs.cmu.edu/~help/afs/afs_acls.htmlСледовательно
rlidwka
означает: Все разрешения включены .Стоит отметить, как @KeithThompson указал в комментариях, что не все системы Unix поддерживают ACL. Так что, вероятно, эта
rlidwka
концепция здесь не применима.источник
rlidwka
могут иметь или не иметь смысла.-p|--parent
будет использоваться, если вы пытаетесь создать каталог сtop-down
подходом. Это создаст родительский каталог, затем дочерний и так далее, если ничего не существует.Об
rlidwka
этом означает предоставление полного или административного доступа. Нашел здесь https://itservices.stanford.edu/service/afs/intro/permissions/unix .источник
mkdir [-switch] имя папки
-p
это переключатель, который является необязательным, он создаст подпапку и родительскую папку, даже если родительская папка не существует.На странице руководства:
Пример:
Это создаст сеансы подпапок, представления, кеш внутри папки фреймворка, независимо от того, был ли фреймворк доступен ранее или нет.
источник
Обратите внимание, что
-p
это аргумент в пользуmkdir
конкретно команды, а не всей Unix. Каждая команда может иметь любые аргументы, которые ей нужны.В данном случае это означает «родители», что означает
mkdir
создание каталога и всех родителей, которые еще не существуют.источник
ПУТЬ: Ответ был дан давно, однако, возможно, более полезно думать о -p как о «Пути» (легче запомнить), поскольку в этом случае mkdir создает каждую часть пути, которой еще нет.
mkdir -p / usr / bin / comm / diff / er / забор
если / usr / bin / comm уже существует, он действует как: mkdir / usr / bin / comm / diff mkdir / usr / bin / comm / diff / er mkdir / usr / bin / comm / diff / er / забор
Как видите, это избавляет вас от необходимости печатать и думать, поскольку вам не нужно выяснять, что уже есть, а что нет.
источник