Go 交互式命令行工具库,提供了包括文本输入、选择菜单、确认提示、多项选择等多种交互类型,帮助快速构建交互式命令行页面。
1
|
go get -u github.com/AlecAivazis/survey/v2
|
1 2 3 4 5
|
var username string prompt := &survey.Input{ Message: "Input username:", } survey.AskOne(prompt, &username)
|
1 2 3 4 5 6
|
var tool string prompt := &survey.Select{ Message: "Choose a tool:", Options: []string{"toolA", "toolB", "toolC"}, } survey.AskOne(prompt, &tool)
|
1 2 3 4 5 6
|
days := []string{} prompt := &survey.MultiSelect{ Message: "What days do you prefer:", Options: []string{"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}, } survey.AskOne(prompt, &days)
|
1 2 3 4 5
|
answer := false prompt := &survey.Confirm{ Message: "Are you sure to continue?", } survey.AskOne(prompt, &answer)
|
1 2 3 4 5
|
password := "" prompt := &survey.Password{ Message: "Please type your password", } survey.AskOne(prompt, &password)
|
https://github.com/AlecAivazis/survey
https://pkg.go.dev/github.com/AlecAivazis/survey/v2#section-readme