gpt4 book ai didi

windows - 命令行窗口

转载 作者:行者123 更新时间:2023-12-03 10:10:37 24 4
gpt4 key购买 nike

我只是想在我的系统上使用以下主要功能的 Go 运行 nmap 扫描

func main() {

execErr := exec.Command("cmd","/c","nmap -T4 -A -v localhost")
if execErr != nil {
panic(execErr)
}

}
它的 panic 。我试图在线搜索文档,但找不到任何对 Windows 有帮助的东西。有人可以帮助或指出一些资源吗?

最佳答案

exec.Command() 不返回 error但是 *Cmd 类型 struct 然后您可以在其上调用方法 Run() (或其他方法,请参见下面的注释)来执行如下命令:

cmd := exec.Command("cmd","/c","nmap -T4 -A -v localhost")
err := cmd.Run()
if execErr != nil {
log.Fatal(err)
}
您的代码 panic因为 exec.Command("cmd","/c","nmap -T4 -A -v localhost")返回指向 Cmd 的有效非零指针struct(紧急消息可能是 cmd.exe 的完整路径,然后是您提供的参数,这些参数是 Path 结构的 ArgsCmd 字段的值...)。
注意: panic() 不是好习惯在这里,使用 log.Fatal()反而。此外,运行 nmap 可能会更好。直接并在代码中处理其输出。查看使用 Output() 读取其他命令输出的示例, CombinedOutput() Start() 取决于您要执行的操作以及命令的行为方式。

关于windows - 命令行窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65767955/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com