Почему там короткие и длинные альтернативы для параметров командной строки?

Большая часть unixoid управляет функцией короткие и длинные альтернативы для параметров командной строки, как ls -a и ls --all, или ls -A и ls --almost-all. Почему те два пути существуют? Каждый короче для ввода, другой легче читать и понять. Но каждый раз, когда я пишу сценарий оболочки, я должен решить, который я хочу использовать. Известно, почему эти две альтернативы существуют? Какой был первым, почему был другой представленный. На DOS/Windows, например, существуют почти только нечувствительные к регистру опции с одной буквой.

23
задан 11.08.2010, 11:02

3 ответа

Первоначально были только односимвольные опции. Некоторые программы взяли несколько-параметров-символа, но все еще с единственным тире. Несколько-параметров-символа двойного тире AFAIK прибывают из GNU; они были представлены, потому что они более читаемы и часто более незабываемы (и у Вас может быть больше чем 52 из них). Много программ теперь имеют обоих: короткие опции для того, когда Вы вводите на командной строке и помните символ, долгие опции для сценариев или на командной строке, если Вы только помните более длинное имя опции.

24
ответ дан 07.12.2019, 09:52

Вы могли бы предположить, что это - вопрос вкуса. При вводе на командной строке короткая опция могла бы быть предпочтена, особенно в случае run-together-options (например. ls -AL). Долгие варианты лучше в передаче намерения, таким образом Вы не должны консультироваться со страницей справочника, когда Вы читаете ls --almost-all --dereference.

Естественно, как Вы приобретаете опыт, Вы могли бы изучить это оба из -A и -L короткие опции достаточно известны, и не требуют этой дополнительной документации. Особенно в сложной команде, которая может объединить несколько команд интересными способами с оценкой, перенаправлением, и т.д. В таком случае Вы могли бы предпочесть краткость по документации.

1
ответ дан 07.12.2019, 09:52

Другая цель I видит в наличии различных способов указать, что параметры (короткий и длинный) - то, что при вводе, людям командной строки Unix/Linux нравится иметь максимально короткий, управляет. Однако они могут стать загадочными, и если сценарий записан с помощью тех коротких версий, они могут стать твердыми понять в будущем. Используя долгую версию может сделать ТУ ЖЕ команду более читаемой и понятной кем-то, кто не гуру этой команды, особенно если эта команда является на самом деле локально записанным сценарием в противоположность известной команде.

1
ответ дан 07.12.2019, 09:52

Теги

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