Maison > développement back-end > Golang > Pourquoi l'ajout de « -o cpu » à My Go « exec.Command » pour « top » provoque-t-il une erreur et comment puis-je la corriger ?

Pourquoi l'ajout de « -o cpu » à My Go « exec.Command » pour « top » provoque-t-il une erreur et comment puis-je la corriger ?

Linda Hamilton
Libérer: 2024-12-17 04:21:25
original
718 Les gens l'ont consulté

Why Does Adding

Utilisation des arguments de ligne de commande avec Go

Ce code Go récupère avec succès les détails de 10 processus à l'aide de la commande "top" avec des arguments spécifiques :

package main

import (
    "os/exec"
)

func main() {
    print(top())
}

func top() string {
    app := "/usr/bin/top"

    cmd := exec.Command(app, "-n", "10", "-l", "2")
    out, err := cmd.CombinedOutput()

    if err != nil {
        return err.Error() + " " + string(out)
    }

    value := string(out)
    return value
}
Copier après la connexion

Cependant, un argument supplémentaire "-o cpu" provoque un erreur :

cmd := exec.Command(app, "-o", "cpu", "-n", "10", "-l", "2")
Copier après la connexion
Copier après la connexion

Dans la console, la commande "top -o cpu -n 10 -l 2" fonctionne comme prévu. Le problème réside dans la manière dont l'argument "-o" est passé à la commande "top".

Pour résoudre ce problème, il est nécessaire de séparer explicitement les arguments comme :

cmd := exec.Command(app, "-o", "cpu", "-n", "10", "-l", "2")
Copier après la connexion
Copier après la connexion

Cela garantit que les arguments sont transmis correctement à la commande, lui permettant de s'exécuter correctement.

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