Lorsque vous travaillez avec des commandes système externes dans Go, vous devrez peut-être capturer leur sortie et la stocker dans votre programme. Bien que les packages exec et os proposent diverses commandes pour l'exécution des processus, ils nécessitent généralement des arguments de fichier pour gérer les entrées/sorties standard. Cet article présente une approche simplifiée pour capturer le résultat d'une commande sous forme de chaîne.
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 cet exemple, exec.Command("date").Output() est utilisé pour exécutez la commande date et capturez sa sortie dans la variable out. La méthode Output() renvoie la sortie standard de la commande sous la forme d'une []byte slice, qui peut être facilement convertie en chaîne à l'aide de string(out).
Vous pouvez également utiliser CombinedOutput() au lieu de Output(), qui renvoie à la fois la sortie standard et l'erreur standard. De plus, la fonction exec.Command vous permet de définir d'autres paramètres tels que le répertoire de travail de la commande, les variables d'environnement et l'entrée.
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!