2

Я видел много инструментов командной строки, которые принимают аргумент "-". Например:

gem install mysql -- —–with-mysql-config=/usr/local/mysql/bin/mysql_config

Что это значит? Имеет ли это особое значение?

2 ответа2

6

Это означает, что инструмент должен прекратить трактовать черту как символ опции. Например, предположим, что вы хотите найти символ тире в файле:

grep -- - file

В вашем примере -- необходим, потому что инструмент gem вызывает другой инструмент, который также использует опции с префиксом тире.

4

Это обычная практика, когда одна программа, которая принимает длинные опции, должна вызывать другую программу, которая также принимает длинные опции. Она сигнализирует первой программе, что она прекратит синтаксический анализ параметров и передаст оставшуюся часть без изменений в вызываемый подпроцесс.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .