Я пытаюсь создать скрипт / приложение, которое принимает аргументы командной строки при запуске. Конечно, это изо дня в день, но, учитывая, что я делаю это впервые, я ищу руководство. Допустим, мой сценарий может принимать такие аргументы командной строки:
script -a -p /path/to/pipe -l mail.Error -m root@email.com
script -a -l mail.Error -m root@email.com -p /path/to/pipe
and so on....
Из-за гибкого характера сценариев командной строки аргументы, которые вы можете передать ему, могут иметь несколько порядков и могут отсутствовать / иметь неверные аргументы. Теперь я знаю, что это можно решить, очень строго указав, как должны отображаться аргументы (сначала -a
, затем -p
с путем, затем -l
с возможностью / приоритетом журнала и наконец -m
с действительный адрес электронной почты) и путем проверки всех возможных случаев их возникновения.
Но должен быть лучший способ. Это невероятно неэффективно (для меня), и мне было интересно, есть ли лучший способ сделать что-то. Я хочу оставаться настолько гибким, насколько это возможно, и просто заставить все работать вместо того, чтобы сосредоточиться на строгом использовании.