2015-01-05 64 views

回答

-1

你是否嘗試寫入流數據(根據引用go-bindata提供的函數返回[]字節)到一個臨時文件?

看到:http://golang.org/pkg/io/ioutil/#TempFile

然後你可以一個系統調用

http://golang.org/pkg/syscall/#Exec

其中第一個參數必須是一個shell執行它。

+0

當[os/exec'包](https://golang.org/pkg/os/exec/)會做時,不要*使用'syscall.Exec'。在沒有需要時,不*使用臨時文件。 –

0

實際上,你可以直接在Go系統Shell界面。根據你的bash腳本中的內容,你可能完全轉換一切。例如處理文件,提取檔案,輸出文本,詢問用戶輸入,下載文件等等,可以在Go中本地完成。對於任何你絕對需要的外殼,你總是可以使用golang.org/pkg/os/exec

我寫了一個代碼片斷,演示了一個非常簡單的基於Go的命令shell。基本上它管道用戶和shell之間的輸入,輸出和錯誤。它可以交互使用或直接運行大多數shell命令。我在這裏提到它主要是爲了演示Go的操作系統功能。檢查出來:github.com/lee8oi/goshell.go