Aller au contenu

Remplacement de processus (exec)

syscall.Exec remplace le processus Go courant par un autre programme (il ne retourne jamais). C’est rarement utilisé, mais disponible pour des cas avancés.

Remplacer le processus courant par /bin/ls.

package main
import (
"syscall"
)
func main() {
binaire := "/bin/ls"
args := []string{"ls", "-l"}
env := syscall.Environ()
err := syscall.Exec(binaire, args, env)
if err != nil {
panic(err)
}
}
Fenêtre de terminal
total 0
-rw-r--r-- 1 user staff 0 Jan 1 12:00 fichier.txt