В чем различия между & ldquo; - & rdquo; и & ldquo; - & rdquo; в командах?

Я часто вижу одиночную черту - или двойную черту --, за которой следуют команды linux или другие установленные программы linux.

Каковы различия между одинарной и двойной тире?

Это просто аббревиатура? Например, -v означает --verbose большую часть времени.

13
задан 3 January 2017 в 14:33

2 ответа

Это - вопрос конвенции. Программы стандарта POSIX обычно только имеют односимвольные опции, и они все снабжаются префиксом единственный дефис. Более длительные версии являются улучшением GNU для ясности, насколько я могу сказать и обычно снабжаюсь префиксом двойные дефисы. Вы видите это в библиотеках, и программы раньше анализировали опции - getopt и gnu-getopt соответственно. НеGNU и non-POSIX-compliant программы могут сделать что-то еще в целом. Обратите внимание, что Вы действительно не можете быть уверены, что длинная форма аргумента может быть тем же от межпрограммного. -f обычно средства --force, но не с apt-get install (распространенное заблуждение). -v может означать версию - обычно, или --verbose, и так далее. Проверьте страницы справочника или другую документацию, чтобы быть уверенными. Также взгляните на статью Wikipedia о getopt. Все это предшествует Linux на десятилетие или больше.

dd пример утилиты стандарта POSIX, которая не имеет никаких написанных через дефис опций вообще. find классический пример утилиты стандарта POSIX, которая имеет опции слова с единственными дефисами - почти весь из findопции являются несколькими символами долго. ps поддержки несколько стилей опции:

This version of ps accepts several kinds of options:

1   UNIX options, which may be grouped and must be preceded by a dash.
2   BSD options, which may be grouped and must not be used with a dash.
3   GNU long options, which are preceded by two dashes.

GNU tar также поддержки несколько стилей опции.

Как использование, предпочтите долгие опции в сценариях, если можно быть уверены, что скрипты будут запущены в совместимых средах - улучшение ясности является благословением при отладке. Для мобильности предпочтены короткие опции.

15
ответ дан 3 January 2017 в 14:33

Обычно - опции могут быть объединены в цепочку вместе, как pacman -Syu являющийся эквивалентным pacman -S -y -u, и - опции обычно берут параметр в качестве в ./configure --prefix=/usr

4
ответ дан 3 January 2017 в 14:33

Другие вопросы по тегам:

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