Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Mentakrifkan dan Menghuraikan FlagSets Bebas dalam Go for Subcommands?

Bagaimana untuk Mentakrifkan dan Menghuraikan FlagSets Bebas dalam Go for Subcommands?

Linda Hamilton
Linda Hamiltonasal
2024-12-28 10:59:31441semak imbas

How to Define and Parse Independent FlagSets in Go for Subcommands?

Mentakrifkan Set Bendera Bebas dalam GoLang

Set Bendera memudahkan takrif set bendera yang berasingan, memberikan sokongan untuk melaksanakan subperintah dalam antara muka baris perintah.

Dalam Go, anda boleh mencipta berbilang jenis FlagSet dan memulakan pembolehubah bendera. Walau bagaimanapun, apabila menghuraikan set bendera ini, anda akan menghadapi ralat jika baris arahan mengandungi bendera yang ditujukan untuk set lain.

f1 := flag.NewFlagSet("f1", flag.ContinueOnError)
apply := f1.Bool("apply", false, "")
silent := f1.Bool("silent", false, "")

f2 := flag.NewFlagSet("f2", flag.ContinueOnError)
reset := f2.Bool("reset", false, "")

Untuk memisahkan FlagSets ini, bezakan antara subperintah dan kemudian gunakan Parse pada set yang sesuai.

switch os.Args[1] {
  case "apply":
    f1.Parse(os.Args[2:])
    fmt.Println("apply", *silent)
  case "reset":
    f2.Parse(os.Args[2:])
    fmt.Println("reset", *loud)
}

Dengan mematuhi pendekatan ini, anda boleh menentukan dan menghuraikan FlagSets bebas dalam GoLang, memastikan bahawa bendera hanya terpakai pada subperintah yang dimaksudkan.

Atas ialah kandungan terperinci Bagaimana untuk Mentakrifkan dan Menghuraikan FlagSets Bebas dalam Go for Subcommands?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn