/ var / adm / wtmpx: значение слишком велико для определенного типа данных [закрыто]

xargs - одна из утилит POSIX. Как прокомментировал @drewbenn, POSIX документирует поведение парсинга опций для большинства своих утилит, чтобы оно соответствовало getopt , с некоторыми допусками для других реализаций, как сказано в 12.1 Синтаксис аргумента служебной программы :

В этом разделе описывается синтаксис аргумента стандартных утилит и вводится терминология, используемая в POSIX.1-2008 для описания аргументов, обрабатываемых утилитами.

В POSIX.1-2008 используется специальная нотация для описания синтаксиса аргументов утилиты. Если не указано иное , все описания утилит используют эту нотацию, которая проиллюстрирована этим примером (см. XCU Простые команды ):

и в заключение

Рекомендуется, чтобы все будущие утилиты и приложения используют эти рекомендации для повышения мобильности пользователей. Тот факт, что некоторые исторические утилиты нельзя было изменить (во избежание поломки существующих приложений), не должен препятствовать достижению этой будущей цели.

В POSIX (помните, что он охватывает только наиболее часто используемые утилиты) есть исключения, которые передают операнды, которые будут опциями в других утилитах как позиционные параметры или параметры. со специальным синтаксисом :

POSIX допускает необязательные значения параметров:

Параметры-аргументы отображаются отделенными от своих параметров символами , кроме случаев, когда аргумент-параметр заключен в нотации '[' и ']' , чтобы указать, что это необязательно.

Навскидку, я не помню, какие утилиты POSIX используют эту функцию.Утилиты ncurses tic и infocmp используют функцию для уровней параметра -v (подробный / отладочный).

Конкретный момент, о котором вы спрашивали, подробно описан в оставшейся части этого абзаца, в нескольких строках.

До POSIX некоторые реализации ps принимали параметры без начального дефиса. В описании POSIX не упоминается, что в описании утилиты или в обосновании синтаксиса:

Помимо POSIX, существуют реализации с длинными параметрами (например, GNU getopt_long ] или X Toolkit ), используя различные способы разделения или присоединения значения опции к опции. Например, может использоваться пунктуация:

--option=value
--option value

В зависимости от реализации, двойной дефис может / не может использоваться для отличия длинных опций от коротких (getopt): lynx и X Toolkit используют одиночное тире ; Например, GNU getopt_long использует двойное тире. Кроме того, + может использоваться, чтобы указать, что опция отменена.

В описании POSIX ничего из этого не упоминается, но вы наверняка с ними столкнетесь.

0
13.07.2017, 14:19
0 ответов

Теги

Похожие вопросы