process - 如何在golang中的exec.command中添加空格

标签 process go

如何使用 exec.command 来启动包含空格的文件?添加引号似乎不起作用,“或 %20 代替空格也不起作用。

package main

import (
"fmt"
"os/exec"
)

func main() {
    StartProcess("C:\\File With Spaces.txt")
}

func StartProcess(Filename string) {
    Filename = "\"" + Filename + "\""
    cmd := exec.Command("cmd","/C start",Filename)
    err := cmd.Start()
    if err!=nil{
    fmt.Println(err)
    }
}

最佳答案

这有效,但仅在 Windows 中

cmd := exec.Command("rundll32.exe", "url.dll,FileProtocolHandler", Filename)

关于process - 如何在golang中的exec.command中添加空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25633077/

相关文章:

linux - 如何使用系统命令获取在后台运行的进程的状态?

C++ 管理进程

objective-c - OSX - 如何获取 NSTask 的内存使用情况?

go - 有不同的方法来设置结构字段的值吗?

go - 为什么 CGO_ENABLED=0 的编译速度较慢?

java - 正确从 C# 运行 Java 应用程序

pointers - 如何将接口(interface)实现指针转换为接口(interface)指针?

logging - 构造系统日志消息时的乱码输出

go - 在 golang 中使用 chi 中间件时无法运行 Controller

process - 在 Windows 和 Linux 中如何在进程终止时收到通知?