Как я могу принять немаркированный аргумент в scopt?

Я использую scopt для обработки аргументов командной строки и хотел бы принять слепой / немаркированный аргумент. Давайте возьмем в качестве примера упрощенную, знакомую команду "ls":

ls [<selector>] [options]

where options is just one: --tree

Таким образом, примеры использования могут быть:

ls
ls --tree
ls . --tree
ls /foo/bar
ls /foo/bar --tree

Библиотека scopt может легко обрабатывать параметры и имеет что-то, определенное как команда (т. Е. Если у ls был какой-то дополнительный режим), но я не понимаю, как я могу принять необязательную строку (селектор) без предшествующей метки параметра,

1 ответ

Решение

У меня были аргументы (arg) и параметры (opt) в обратном направлении. Они должны быть:

ls --tree /foo/bar

Используя этот стандарт, scopt уже делает это с помощью директивы arg.

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