首页 >后端开发 >Golang >如何在Go中执行命令而不显示命令提示符窗口?

如何在Go中执行命令而不显示命令提示符窗口?

Susan Sarandon
Susan Sarandon原创
2024-12-04 15:18:11321浏览

How Can I Execute Commands in Go Without Showing the Command Prompt Window?

在 Go 中使用 Exec 隐藏命令提示符窗口

当使用 exec.Command 函数在 Go 中执行命令时,最好避免显示命令提示符窗口。虽然将 SysProcAttr.HideWindow 设置为 true 通常会隐藏它,但您可能会在 Windows 上遇到问题。

解决方案:

要有效防止命令提示符窗口出现,请考虑以下解决方案:

import (
    "os/exec"
    "syscall"
)

// HideWindow invokes a command with hidden command prompt.
func HideWindow() error {
    cmd_path := "C:\Windows\system32\cmd.exe"
    cmd_instance := exec.Command(cmd_path, "/c", "notepad")
    cmd_instance.SysProcAttr = &syscall.SysProcAttr{HideWindow: true}
    _, err := cmd_instance.Output()
    return err
}

注意:该解决方案源自[Reddit](https://www.reddit.com/r/golang/comments/2c1g3x/build_golang_app_reverse_shell_to_run_in_windows/)。

以上是如何在Go中执行命令而不显示命令提示符窗口?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn