繁体   English   中英

exec.command 不在 windows (golang) 上执行

[英]exec.command does not execute on windows (golang)

我试图让 wget 将文件下载到临时目录中,然后将其移动到适当的路径。 我正在尝试使用以下代码:

    // run shell `wget <URL> -O <FILEPATH>`
    cmd := exec.Command("cmd /K wget", url, "-O", "temp/" + filepath, "&& echo Done downloading, moving... '&&' del -y", filename,"'&&' mv temp/", filename, filename)
    cmd.Stdout = os.Stdout
    cmd.Stderr = os.Stderr
    return cmd.Run()
}

但是当被调用时,它不输出任何东西。 没有错误,什么都没有。

如果你真的想保留这个解决方案(评论中已经指出了缺点),你需要将每个参数分开到cmd.exe ,所以你可以在任何地方放置一个空格,你都有一个单独的参数:

cmd := exec.Command("cmd", "/K", "wget", url, "-O", "temp/" + filepath, "&&", "echo", "Done downloading, moving...", "&&", "del", "-y", filename, "&&", "mv", "temp/" + filename, filename)

另请参阅对类似问题的回答

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM