Erreur dans Fork/Exec : "Aucun fichier ou répertoire de ce type" Quittez l'état 1
Lors de la tentative d'exécution d'un processus à l'aide de fork/exec dans Go, vous pouvez rencontrer une erreur indiquant « aucun fichier ou répertoire de ce type » avec un statut de sortie de 1. Cela indique que le fichier ou le répertoire spécifié ne peut pas être trouvé.
Pour résoudre ce problème, assurez-vous de ce qui suit :
Formatez correctement la chaîne de commande :
Le format de la chaîne de commande transmise à exec .La commande doit être :
cmd := exec.Command(name, args...)
où name est le nom de l'exécutable et args sont les arguments à transmettre au exécutable.
Dans votre code fourni, la chaîne de commande était incorrecte :
cmd := exec.Command(c)
où c est une chaîne formatée contenant le programme et les arguments. Utilisez plutôt ce qui suit :
cmd := exec.Command("./goreplay", "--input-file", gor_name, "--input-file-loop", "--output-http", ras_ip)
Valider les autorisations du répertoire :
Assurez-vous que le répertoire contenant l'exécutable dispose des autorisations d'exécution. Vous pouvez vérifier les autorisations à l'aide de la commande suivante :
ls -l your_directory
Si l'autorisation d'exécution est manquante pour votre utilisateur ou groupe, utilisez chmod pour l'accorder :
chmod +x your_directory
Vérifier Présence de l'exécutable :
Vérifiez si le fichier exécutable ./goreplay existe dans le répertoire spécifié. Si le fichier n'est pas présent, l'exec.Command échouera.
Dépannage supplémentaire :
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!