Я создаю интерфейс командной строки, который может вызывать другие базовые программы, у которых есть собственные параметры и аргументы. Я хотел бы иметь возможность передавать эти параметры программе через интерфейс командной строки.
$ cli --program [PROGRAM] --programOpts[OPT1, OPT2, ...]
Пример:
$ cli --program foo --programOpts.bar 'foo' --programOpts.foo 'bar'
^ В этом случае bar
и foo
в programOpts
cli
неизвестны. CLI знает только programOpts
и что это неизвестный вектор параметров, специфичных для вызываемой базовой программы.
Я надеялся, что у Clap есть API для реализации такой вещи (изучал Arg
и ArgGroup
), но это не похоже на это.
А есть такой API?
Vec
? - person Boiethios   schedule 18.01.2019clap::Values
здесь, если не можете предположить, что значения закодированы в UTF-8, используйтеclap::OsValues
. - person FrederikDS   schedule 18.01.2019--programOpts.bar 'foo'
. Я бы предпочел что-то вроде--programOpts 'bar=foo'
. - person SirDarius   schedule 18.01.2019