Comment créer un outil CLI interactif avec Golang

Créez un outil CLI interactif avec golang.

Lorsque vous appuyez sur une commande, elle sera dans un état d'attente d'entrée. Bouclez indéfiniment jusqu'à ce que vous saisissiez la valeur appropriée.

Forfaits requis

Exemple de code

package main

import (
	"fmt"
	"bufio"
	"os"
)

func main() {
	fmt.Println("Entrez stop.")
	scanner := bufio.NewScanner(os.Stdin)
	for scanner.Scan() {
		if scanner.Text() == "stop" {
			break
		}
		fmt.Println("Boucle jusqu'à ce que l'arrêt soit entré.")
	}
	fmt.Println("J'ai fini.")
}
//En attente de saisie avec cette méthode
scanner.Scan()
//Renvoie true si la valeur d'entrée est reçue avec succès
val := scanner.Scan()
fmt.Println(val)
// => true
//La valeur saisie peut être appelée avec cette méthode
scanner.Text()

Recommended Posts

Comment créer un outil CLI interactif avec Golang
Comment obtenir de l'aide dans un shell interactif
Comment convertir csv en tsv dans la CLI
Comment créer un pilote de périphérique Linux intégré (11)
Comment créer un pilote de périphérique Linux intégré (8)
Comment créer un pilote de périphérique Linux intégré (1)
Comment créer un pilote de périphérique Linux intégré (4)
Comment créer un pilote de périphérique Linux intégré (7)
Comment créer un pilote de périphérique Linux intégré (2)
Comment créer un pilote de périphérique Linux intégré (3)
Comment créer un pilote de périphérique Linux intégré (6)
Faire de fixture un argument à paramétrer dans py.test
Comment créer un pilote de périphérique Linux intégré (5)
Comment créer un pilote de périphérique Linux intégré (10)
Comment apporter des modifications à l'interpréteur Python dans Pycharm
Comment créer un pilote de périphérique Linux intégré (9)
Un outil pour créer des images de masque pour ETC en Python
Comment faire reconnaître Yubico Yubikey par Manjaro Linux
Expliquez en détail comment créer un son avec python
Comment créer un serveur HTTPS avec Go / Gin
Comment créer un téléchargeur d'image avec Bottle (Python)
Comment créer un pilote de périphérique Linux intégré (12) (Terminé)
Comment utiliser Decorator dans Django et comment le créer
Comment développer en Python
[Python] Comment créer une matrice de contiguïté / liste de contiguïté [Théorie des graphes]
Comment échanger des éléments dans un tableau en Python et comment inverser un tableau.
[Python] Comment écrire une instruction if en une phrase.
Comment créer un package Python (écrit pour un stagiaire)
Comment manipuler le DOM dans iframe avec Selenium
Comment se connecter automatiquement comme 1Password depuis CLI
Comment vérifier si une valeur existe dans un type d'énumération
Comment obtenir un aperçu de vos données dans Pandas
Comment créer un LINE BOT 004 interactif (répondre à la date de clôture d'une société cotée)
Comment émettre intentionnellement une erreur dans le shell pendant les tests
Comment faire une traduction japonais-anglais
[Python] Comment faire PCA avec Python
Comment gérer une session dans SQLAlchemy
Comment connaître la structure interne d'un objet en Python
Comment écrire sobrement avec des pandas
Un jeu pour partir à l'aventure en mode interactif de python
Comment utiliser SQLite en Python
Comment créer un bot slack
Comment créer un robot - Avancé
Comment créer une fonction récursive
Comment convertir 0,5 en 1056964608 en un seul coup
Comment refléter CSS dans Django
Comment tuer des processus en vrac
Comment utiliser Mysql avec python
[Django] Comment lire les variables / constantes définies dans un fichier externe
Comment envelopper C en Python
Comment utiliser ChemSpider en Python
J'ai essayé de faire 5 modèles de base d'analyse en 3 ans
[Blender] Comment créer un plug-in Blender
Comment utiliser PubChem avec Python
[Blender] Comment rendre les scripts Blender multilingues
[Python] Japonais simple ⇒ J'ai essayé de créer un outil de traduction en anglais