Maison > développement back-end > Golang > Comment exécuter des commandes Windows intégrées comme « del » dans Golang ?

Comment exécuter des commandes Windows intégrées comme « del » dans Golang ?

Linda Hamilton
Libérer: 2024-12-24 17:43:10
original
1037 Les gens l'ont consulté

How to Execute Built-in Windows Commands Like

Exécution de commandes Windows dans Golang

Lorsque vous tentez d'exécuter une commande Windows simple telle que "del c:aaa.txt" à l'aide de "exec.Command", les utilisateurs peuvent rencontrez une erreur indiquant que le fichier exécutable est introuvable dans le chemin système. Cette erreur se produit car certaines commandes, comme « del », sont intégrées à l'interpréteur de commandes Windows (cmd.exe) et ne disposent pas de fichiers exécutables autonomes.

Solution

Pour exécuter ces commandes intégrées. dans les commandes en Golang, l'approche suivante peut être adoptée :

  1. Cross-Platform Manipulation : Vérifiez le système d'exploitation actuel à l'aide de runtime.GOOS.
  2. Windows : Pour les systèmes Windows, utilisez exec.Command("cmd", "/C", command) pour exécutez la commande souhaitée via l'interpréteur de commandes.
  3. Mac/Linux : pour les systèmes Mac et Linux, exécutez la commande directement en utilisant exec.Command("command").

Voici un extrait de code modifié qui intègre cette solution :

package main

import (
    "fmt"
    "os/exec"
    "runtime"
)

func main() {
    var c *exec.Cmd

    switch runtime.GOOS {
    case "windows":
        c = exec.Command("cmd", "/C", "del", "D:\a.txt")
    default:
        c = exec.Command("rm", "-f", "D:\a.txt")
    }

    if err := c.Run(); err != nil {
        fmt.Println("Error:", err)
    }
}
Copier après la connexion

En utilisant cette approche, vous pourrez exécuter Windows build- dans les commandes avec succès dans Golang, même celles sans fichiers exécutables autonomes.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal