2013-06-28 40 views

回答

9

这是一样的Kernel.exec:

package main 
import "syscall" 
import "fmt" 
func main() { 
    syscall.Exec("/bin/ls", []string{"ls", "-l"}, []string{}); 
    // syscall.Exec("/bin/ssh", []string{"ssh", "-p", "22", "[email protected]"}, 
    //  []string{}); 
    fmt.Println("Error can't be here"); 
} 

,但它是不可移植的IFAIK。

+0

你如何处理多个参数?我试着这样:'syscall.Exec(“/ usr/bin/ssh”,[] string {“ - p”,“22”,“root @ host”},[] string {})'但似乎是它不工作,因为我得到的错误:'ssh:连接到主机22端口22:没有路由到主机' – kolrie

+0

这工作tho:'''''''''''''''''''''''' -p 22“,”root @ host“},[] string {})' – kolrie

+1

@kolrie,抱歉,您需要传递命令名称作为第一个参数。修复。 – perreal