Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk Mencipta Set Bendera Bebas dalam GoLang untuk Subperintah?

Bagaimana untuk Mencipta Set Bendera Bebas dalam GoLang untuk Subperintah?

Linda Hamilton
Lepaskan: 2024-12-09 20:38:10
asal
772 orang telah melayarinya

How to Create Independent FlagSets in GoLang for Subcommands?

Set Bendera Bebas dalam GoLang

Pengenalan:

Set Bendera dalam Go menyediakan mekanisme untuk menentukan dan menghuraikan bendera baris arahan. Walaupun dokumentasi mencadangkan keupayaan untuk mencipta set bebas untuk melaksanakan subperintah dalam antara muka pengguna, ia masih tidak jelas bagaimana untuk mencapai fungsi ini dalam amalan.

Soalan:

Bagaimana bolehkah kita menentukan FlagSets bebas dalam GoLang untuk menyokong subperintah dalam baris perintah antara muka?

Jawapan:

Membezakan Antara Subperintah

Untuk mencapai FlagSets bebas, perbezaan utama terletak pada mengenal pasti subperintah sebelum menghuraikan bendera. Begini caranya:

1. Cipta FlagSets:

Tentukan beberapa FlagSets, satu untuk setiap subperintah.

f1 := flag.NewFlagSet("f1", flag.ContinueOnError)
reset := f2.Bool("reset", false, "")
Salin selepas log masuk

2. Bezakan Subperintah:

Periksa argumen baris perintah untuk mengenal pasti subperintah aktif. Contohnya, jika awalan perintah ialah "apply", laksanakan FlagSet "f1".

switch os.Args[1] {
  case "apply":
    f1.Parse(os.Args[2:])
  case "reset":
    f2.Parse(os.Args[2:])
}
Salin selepas log masuk

Dengan memisahkan penghuraian FlagSets yang berbeza berdasarkan subperintah, kami boleh mengekalkan set bebas bendera yang digunakan sahaja kepada subperintah masing-masing.

Atas ialah kandungan terperinci Bagaimana untuk Mencipta Set Bendera Bebas dalam GoLang untuk Subperintah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan