

Swiftからシェルスクリプトを実行するにはどうしたら良いでしょうか？  
尚、シェルスクリプトの実行が終了するまで、Swiftの処理は待機したいです。


CC BY-SA 3.0
2015-05-09T20:52:50.050
9994
2015-05-20T05:41:09.157
2015-05-11T04:59:29.990
440
9666
question
swift
Swiftからシェルスクリプトを実行したい。


`NSTask`クラスを使用してください。  
`waitUntilExit`でスクリプトの終了を待機しています。

[code]

    import Foundation
    
    let task = NSTask.launchedTaskWithLaunchPath("/bin/sh", arguments: ["-c", "sleep 3"])
    task.waitUntilExit()
    
[/code]


CC BY-SA 3.0
2015-05-09T23:44:50.663
9996
2015-05-09T23:44:50.663
3639
9994
answer


下記のような記述で宜しいのでしょうか？

[code]

    let task = NSTask.launchedTaskWithLaunchPath("./test.sh", arguments: ["-c","sleep 3"])
    
    task.waitUntilExit()
    
[/code]

この場合、test.shはX-Codeのプロジェクトのどの位置に配置しておけば宜しいのでしょうか？


CC BY-SA 3.0
2015-05-11T02:10:35.230
10017
2015-05-11T04:58:03.650
2015-05-11T04:58:03.650
440
9666
9994
answer


let task = NSTask.launchedTaskWithLaunchPat  
("/bin/sh", arguments: ["-c","xxxxx.sh"])  
task.waitUntilExit()

xxxxx.shの部分を該当するシェルマクロにする。  
xxxxx.shの部分はフルパスで書く。

これで動きました。 ありがとうございました。


CC BY-SA 3.0
2015-05-20T05:41:09.157
10409
2015-05-20T05:41:09.157
9666
9994
answer