Récupération de la sortie de commande sous forme de chaîne dans Go
Dans Go, l'accès à la sortie des commandes système peut être obtenu en utilisant diverses méthodes. Au départ, il peut sembler nécessaire de manipuler des fichiers spécifiques associés à la commande, tels que sa sortie standard et ses flux d'erreurs. Cependant, il existe une approche plus pratique pour capturer le résultat de la commande sous forme de chaîne.
Pour simplifier le processus, prenons un exemple : obtenir le résultat de la commande 'ls' dans un programme Go et le stocker dans une variable de chaîne. L'extrait de code suivant montre comment y parvenir :
package main import ( "fmt" "log" "os/exec" ) func main() { out, err := exec.Command("date").Output() if err != nil { log.Fatal(err) } fmt.Printf("The date is %s\n", out) }
Dans l'exemple ci-dessus, exec.Command("date").Output() est utilisé pour exécuter la commande 'date' et récupérer sa sortie. Le résultat est stocké dans la variable out sous forme de tranche d'octets. Pour le convertir en chaîne, appliquez simplement la fonction string() :
string(out)
De plus, exec.Command fournit la méthode CombinedOutput(), qui peut être utilisée à la place de Output(). CombinedOutput() renvoie à la fois la sortie standard et l'erreur standard, vous permettant de recueillir plus d'informations sur l'exécution de la commande.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!