Swiftからシェルスクリプトを実行するにはどうしたら良いでしょうか?
尚、シェルスクリプトの実行が終了するまで、Swiftの処理は待機したいです。
Asked
Active
Viewed 2,449 times
3 Answers
3
NSTask
クラスを使用してください。
waitUntilExit
でスクリプトの終了を待機しています。
import Foundation
let task = NSTask.launchedTaskWithLaunchPath("/bin/sh", arguments: ["-c", "sleep 3"])
task.waitUntilExit()

h2so5
- 4,103
- 2
- 16
- 36
0
下記のような記述で宜しいのでしょうか?
let task = NSTask.launchedTaskWithLaunchPath("./test.sh", arguments: ["-c","sleep 3"])
task.waitUntilExit()
この場合、test.shはX-Codeのプロジェクトのどの位置に配置しておけば宜しいのでしょうか?
0
let task = NSTask.launchedTaskWithLaunchPat
("/bin/sh", arguments: ["-c","xxxxx.sh"])
task.waitUntilExit()
xxxxx.shの部分を該当するシェルマクロにする。
xxxxx.shの部分はフルパスで書く。
これで動きました。 ありがとうございました。

ソラ君
- 149
- 9