how do i open file with application like emacs,vim, TextMate in golang?

huangapple go评论86阅读模式
英文:

how do i open file with application like emacs,vim, TextMate in golang?

问题

如何在golang中打开类似emacs、vim、TextMate这样的应用程序中的文件?

cmd := exec.Command("open", "-a", "/usr/bin/vim", "/var/www/index.php")
cmd.Stdout = os.Stdout
cmd.Stderr = os.Stderr
if err := cmd.Run(); err != nil {
    log.Fatal(err)
}

或者

cmd := exec.Command("/usr/bin/vim", "/var/www/index.php")
cmd.Stdout = os.Stdout
cmd.Stderr = os.Stderr
if err := cmd.Run(); err != nil {
    log.Fatal(err)
}

我发现上述两种方法都无法工作,是否有更好的解决方案?

英文:

How do I open a file within an application like emacs, vim, TextMate in golang?

cmd := exec.Command("open", "-a", "/usr/bin/vim", "/var/www/index.php")
cmd.Stdout = os.Stdout
cmd.Stderr = os.Stderr
if err := cmd.Run(); err != nil {
    log.Fatal(err)
}

or

cmd := exec.Command("/usr/bin/vim", "/var/www/index.php")
cmd.Stdout = os.Stdout
cmd.Stderr = os.Stderr
if err := cmd.Run(); err != nil {
    log.Fatal(err)
}

I found both of the above cannot work, is there any good solution?

答案1

得分: 1

这绝对有效-你遇到了什么错误?

package main

import (
	"log"
	"os"
	"os/exec"
)

func main() {
	cmd := exec.Command("/usr/bin/vim", "/var/www/index.php")
	cmd.Stdout = os.Stdout
	cmd.Stderr = os.Stderr
	if err := cmd.Run(); err != nil {
		log.Fatal(err)
	}
}

这是一个Go语言的代码片段,它使用os/exec包来执行命令。该代码的目的是打开/var/www/index.php文件并使用Vim编辑器进行编辑。如果执行命令时出现错误,将会记录错误信息并终止程序的执行。

英文:

This definitely works - what errors are you getting ?

package main

import (
	"log"
	"os"
	"os/exec"
)

func main() {
	cmd := exec.Command("/usr/bin/vim", "/var/www/index.php")
	cmd.Stdout = os.Stdout
	cmd.Stderr = os.Stderr
	if err := cmd.Run(); err != nil {
		log.Fatal(err)
	}
}

huangapple
  • 本文由 发表于 2015年3月5日 17:23:24
  • 转载请务必保留本文链接:https://go.coder-hub.com/28874158.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定