我是一個完整的快速noob。在xcode中使用這個代碼,我得到了我需要的結果。我創建了一個需要幾個參數的命令行二進制「菜單欄」。我通常在終端「/ bin/menubar getip」,「/ bin/menubar/getuser」中運行它。我想根據以下工作代碼創建一個函數。斯威夫特NStask函數
import Cocoa
import Foundation
var task:NSTask = NSTask()
var pipe:NSPipe = NSPipe()
task.launchPath = "/bin/menubar"
task.arguments = ["getip"]
task.standardOutput = pipe
task.launch()
var handle = pipe.fileHandleForReading
var data = handle.readDataToEndOfFile()
var result_s = NSString(data: data, encoding: NSUTF8StringEncoding)
print(result_s)
我想將其轉換爲函數。
func commmand (argument: String) -> String
{
let task:NSTask = NSTask()
let pipe:NSPipe = NSPipe()
task.launchPath = "/bin/menubar"
task.arguments = ["argument"]
task.standardOutput = pipe
task.launch()
let handle = pipe.fileHandleForReading
let data = handle.readDataToEndOfFile()
let result_s = NSString(data: data, encoding: NSUTF8StringEncoding)
return result_s
}
commmand getip
SOOOO什麼問題呢? – Slayter
「我得到了我需要的結果」聽起來不錯。問題是什麼? – matt
對不起,我沒有說清楚。我試圖將其轉換爲可重用的函數。所以我可以通過不同的論點。 – nyitguy