>  기사  >  백엔드 개발  >  Cobra의 플래그에 대한 선택적 매개변수를 지정할 수 있습니까?

Cobra의 플래그에 대한 선택적 매개변수를 지정할 수 있습니까?

王林
王林앞으로
2024-02-13 08:40:08802검색

您可以为 Cobra 中的标志指定可选参数吗?

php 편집자 Zimo가 대답했습니다: 예, Cobra에서는 플래그에 대한 선택적 매개변수를 지정할 수 있습니다. Cobra는 우아한 PHP 애플리케이션을 만들기 위한 강력한 명령줄 도구입니다. 플래그 뒤에 대괄호([])를 추가하여 Cobra 명령에 대한 선택적 매개변수를 지정할 수 있습니다. 이를 통해 사용자는 필요에 따라 추가 정보나 구성 옵션을 선택적으로 제공할 수 있습니다. 선택적 매개변수를 사용하면 프로그램의 유연성과 적응성이 향상되고 사용자에게 더 나은 경험을 제공할 수 있습니다.

질문 내용

내 프로그램에 다음 플래그가 있고 양수만 인쇄한다고 가정해 보겠습니다.

c.PersistentFlags().IntVar(&SomeFlag, optionSomeFlag, 0, "做某事(范围: x-y)")

기본값은 0이므로 사용자가 플래그를 토글하지 않으면 아무것도 인쇄되지 않습니다. 플래그가 매개변수를 허용하지만 기본값 자체를 갖도록 만드는 방법은 무엇입니까? 즉, 기본값이 5

인 경우

./program --someflag 输出将是 5

만약 내가 그랬다면

./program --someflag=1 输出将为 1

Cobra의 사용자 가이드를 따르려고 노력 중이며 기본값을 완전히 지정하는 대신 사용자가 플래그를 트리거할 때만 기본값을 지정할 수 있는 명령 유형이 있을 것으로 기대했습니다. 제가 이것을 잘못 이해했거나 뭔가를 놓쳤을 수도 있습니다.

Solution

nooptdefval

을 사용하여 수행할 수 있습니다. 으아악

아래 코드에서 설명하는 동작을 갖는 cobra가 포함된 명령줄 애플리케이션의 전체 예를 찾을 수 있습니다

으아악

다음은 다양한 플래그 값의 실행 결과입니다.

으아악

위 내용은 Cobra의 플래그에 대한 선택적 매개변수를 지정할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 stackoverflow.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제