Я пишу инструмент командной строки, который выполняет другие команды в песочнице.Основное использование моего инструмента:
my_tool 'echo "hello"'
, который выполняет echo "hello"
.Я хотел бы иметь возможность написать
my_tool echo "hello"
вместо этого;однако это приводит к my_tool: error: unrecognized arguments: hello
, потому что, кроме основного аргумента, мой инструмент принимает только логический параметр -n
.
Я бы хотел, чтобы parse_args()
понял, что echo "hello"
является основным аргументом, даже если он не заключен в тики, потому что echo
начинается без минуса и, таким образом, сигнализирует о начале основного аргумента.
Я пытался parse_known_args()
.Однако параметры инструмента «песочница» смешиваются с параметрами моего собственного инструмента, например:
my_tool echo -n "hello"
имеет тот же результат, что и
my_tool -n echo "hello"
, чего не должно быть.