Lors de l'intégration de scripts shell dans des applications Go, la tâche d'exécution d'un fichier .sh entier (avec manipulations de variables ) peut poser un défi. Le package os/exec par défaut de Go fournit des fonctionnalités permettant d'exécuter des commandes individuelles, mais il ne prend pas en charge directement la gestion des scripts.
Pour résoudre ce problème, vous disposez de deux options :
Option 1 : préparer Votre script pour une exécution directe
Une fois que vous avez effectué ces ajustements, vous pouvez exécuter le script directement en utilisant exec.Command() :
cmd := exec.Command("./script.sh")
Option 2 : Exécuter avec un intermédiaire Shell
Si vous préférez ne pas modifier votre script, vous pouvez invoquer le shell et passer le script en argument :
cmd := exec.Command("/bin/sh", "mongoToCsvSH")
N'oubliez pas que dans ce scénario, votre script doit résider dans la variable d'environnement $PATH du système ou être fourni sous forme de chemin absolu.
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!