Что такое основные командные задачи?

Что такое основные командные задачи?

Я наткнулся на идею праймериз, занимаясь бегом man find:

.
.
.
PRIMARIES
     All primaries which take a numeric argument allow the number to be preceded by a plus sign (``+'') or a minus sign (``-'').  A preceding plus sign means ``more than n'', a pre-
     ceding minus sign means ``less than n'' and neither means ``exactly n''.
.
.
     -depth n
             True if the depth of the file relative to the starting point of the traversal is n.

Идет поискДокументация POSIXдля «праймериз» не дал никаких результатов.

Если немного разобраться, то становится ясно, что основные аргументы отличаются от переключателей и флагов, поскольку они располагаются после переключателей, флагов и основных аргументов:

$ find -depth 1 .
find: illegal option -- e
usage: find [-H | -L | -P] [-EXdsx] [-f path] path ... [expression]
       find [-H | -L | -P] [-EXdsx] -f path [path ...] [expression]
$ find . -depth 1
./.DS_Store
./.vagrant
./foo
./some

Мне любопытно:

  • Что такое праймериз?
  • Есть ли какая-либо документация, которую я могу о них прочитать?
  • Чем они отличаются от переключателей и флагов?

решение1

Это условия/действия findязыка , те, из которых в основном состоит «выражение», упомянутое в строке использования: -name, -type, -print, -execи т. д. Этот термин используется для их отделения от операторов, которые объединяют только основные операторы: !, -a, -oи скобки.

Я не помню, чтобы этот термин использовался в других контекстах, кроме find. Он используется вСпецификация POSIX дляfindи вСтраница руководства FreeBSD. GNU выделяется и в этом, документация для GNU find (например, страница руководства) не использует этот термин, но вместо этого делит праймериз натестыо свойствах файлов,действиякоторые что-то делают, ипараметрыкоторые влияют на то, как findработает само по себе. Деление кажется полезным, но оно немного неточно, поскольку все основные элементы возвращают истинное значение, даже действия.

Связанный контент