2015-04-06 138 views
2

我在我的pi上運行OSMC,晚上我喜歡在晚上關閉HDMI而不關閉整個pi。現在,我正在通過終端或通過我創建的一個Automator工作流程來完成此操作。最近我想將它合併到狀態欄應用程序中。我遇到的問題是想辦法如何使用swift ssh進入我的pi,然後,一旦我進入它,發送命令到pi。這就是我現在所擁有的,這是不工作:使用Swift通過ssh向Raspberry Pi發送命令

@IBAction func OSMCClicked(sender: NSMenuItem) { 
    let task = NSTask() 
    task.launchPath = "/usr/bin/" 
    if (sender.state == NSOnState) { 
     sender.state = NSOffState 
     task.arguments = ["mosh [email protected]", "osmc stop", "exit"] 
     //task.arguments = ["mosh [email protected]"] 
     //task.arguments = ["OSMC stop"] 
     //task.arguments = ["exit"] 
    } 
    else { 
     sender.state = NSOnState 
     task.arguments = ["mosh [email protected]", "osmc start", "exit"] 
     //task.arguments = ["mosh [email protected]"] 
     //task.arguments = ["osmc start"] 
     //task.arguments = ["exit"] 
    } 
    task.launch() 
} 

回答

0

所以,我只是不知道太多關於ssh或NSTask。發現啓動路徑可以是/usr/bin/ssh,然後參數將是["[email protected]", "osmc start", "exit"]。除了osmc別名在我的.bashrc文件中,當它不是交互式時它不起作用,所以我只是用實際命令代替它,並使用-t標誌而不是退出。

+0

但你會如何插入密碼? –

+0

按照此頁上的說明http://steve.dynedge.co.uk/2012/05/30/logging-into-a-rasberry-pi-using-publicprivate-keys/ –