Я часто вижу команды, которые устанавливают значение необязательного параметра с помощью =, а иногда и простого пробела. Как это называется?
Пример обеих работающих команд:
firewall-cmd --permanent --add-service=http
и
firewall-cmd --permanent --add-service http
В чем разница между использованием знака равенства и его отсутствием?
решение1
Я не знаю, есть ли для этого формальное название; я обычно называю это --foo=bar
«явным» и --foo bar
«неявным», потому что в последнем случае вам нужно знать, как это реализовано, чтобы понять, означает ли это «установитьстрока вариант foo
«запретить» или «установитьБулева опция foo
true
и передатьаргумент'бар'".
Следуя весьма разумному высказыванию Python, что «явное лучше неявного», я всегда предпочитаю --foo=bar
.