Maison >développement back-end >Golang >Golang ferme la fenêtre noire

Golang ferme la fenêtre noire

PHPz
PHPzoriginal
2023-05-13 09:23:06888parcourir

Lorsque vous écrivez un programme Go, vous exécutez généralement le programme dans une fenêtre de ligne de commande noire. Une fois l'exécution du programme terminée, la fenêtre noire se ferme généralement automatiquement. Mais parfois, nous devrons peut-être fermer manuellement la fenêtre une fois l'exécution du programme terminée. Dans ce cas, vous pouvez utiliser quelques astuces pour atteindre cet objectif.

  1. Utilisez la fonction "fmt.Scanln"

Ajoutez la fonction "fmt.Scanln()" après la dernière instruction "fmt.Println" dans le programme. Cela amènera le programme à suspendre l'exécution avant d'attendre l'entrée de l'utilisateur, à attendre que l'utilisateur appuie sur la touche "Entrée", puis le programme poursuivra l'exécution et fermera automatiquement la fenêtre de ligne de commande après que l'utilisateur ait appuyé sur la touche "Entrée".

Voici un exemple :

package main

import "fmt"

func main() {
    fmt.Println("Hello, world!")
    fmt.Scanln()
}

Le programme affichera "Hello, world!" et attendra que l'utilisateur appuie sur la touche "Entrée".

  1. Utilisation du package "os/exec"

Dans Go, vous pouvez utiliser le package "os/exec" pour exécuter une commande et attendre que la commande termine son exécution. Nous pouvons utiliser ce package pour démarrer le processus "cmd.exe" et transmettre le paramètre "/c" et la commande que nous voulons exécuter comme arguments. Nous attendrons ensuite la fin de l’exécution du processus.

Voici un exemple :

package main

import (
    "fmt"
    "os/exec"
)

func main() {
    cmd := exec.Command("cmd.exe", "/c", "pause")
    err := cmd.Run()
    if err != nil {
        fmt.Println(err)
    }
}

Le programme démarrera le processus "cmd.exe" et transmettra le paramètre "/c" et la commande "pause". Il attendra la fin de l'exécution de la commande et affichera le message "Appuyez sur n'importe quelle touche pour continuer..." sur la fenêtre. Une fois que l'utilisateur appuie sur une touche, la fenêtre se ferme automatiquement.

  1. Définir le titre de la fenêtre

Vous pouvez utiliser la commande système "titre" pour définir le titre de la fenêtre. Dans Go, vous pouvez utiliser le package "os/exec" pour exécuter cette commande.

Voici un exemple :

package main

import (
    "fmt"
    "os/exec"
)

func main() {
    title := exec.Command("title", "My Program")
    err := title.Run()
    if err != nil {
        fmt.Println(err)
    }

    fmt.Println("Hello, world!")
}

L'exécution de ce programme affichera le titre "Mon programme" sur la barre de titre de la fenêtre. Une fois l'exécution du programme terminée, la fenêtre se fermera automatiquement.

Résumé

Ci-dessus sont trois méthodes pour fermer la fenêtre de ligne de commande en langage Go. Vous pouvez choisir la méthode qui vous convient en fonction de vos besoins. Quelle que soit la méthode que vous choisissez, ils peuvent vous aider à exécuter le programme Go dans une fenêtre de ligne de commande noire et à fermer la fenêtre une fois l'exécution du programme terminée, rendant votre travail plus pratique et efficace.

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!

Déclaration:
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