Swift2 NSTask不在Swift中工作

Swift2 NSTask不在Swift中工作,swift2,xcode7,xctest,Swift2,Xcode7,Xctest,我正在写一个swift测试,我需要评估一个子过程。我想调用终端,将applescript的路径传递给终端并执行它 我在快速测试文件中导入了UIKIT和FULL。当我写一个常量时,比如:let task=NSTask()NSClass在NSObject中没有被引用,因此我得到一条消息,它是一个 使用未识别的NSTask 如果我写让pipe=NSPipe()被引用并起作用。为什么在导入UIKIT和基金会后,NSTAKE不可访问?SWIFT 3苹果改变了NSTASK API 要立即执行cmd,请执行

我正在写一个swift测试,我需要评估一个子过程。我想调用终端,将applescript的路径传递给终端并执行它

我在快速测试文件中导入了UIKIT和FULL。当我写一个常量时,比如:

let task=NSTask()
NSClass在NSObject中没有被引用,因此我得到一条消息,它是一个

使用未识别的NSTask


如果我写
让pipe=NSPipe()
被引用并起作用。为什么在导入UIKIT和基金会后,NSTAKE不可访问?SWIFT 3苹果改变了NSTASK API

要立即执行cmd,请执行以下操作:

// Create a process (was NSTask on swift pre 3.0)
let task = Process()

// Set the task parameters
task.launchPath = "/bin/ls"
task.arguments = ["-laF@" , filePath]

// Create a Pipe and make the task
// put all the output there
let pipe = Pipe()
task.standardOutput = pipe

// Launch the task
task.launch()

// Get the data
let data = pipe.fileHandleForReading.readDataToEndOfFile()
let output = String(data: data, encoding: String.Encoding.utf8)
print(output!)

iOSthen上没有NSTask,这就解释了这一点。谢谢@ USSR441734 Palm()仍然说:“使用未解决的标识符进程”在SWIFT 3 XCODE 8.1(带有基础导入)的任何建议?现在测试在XCODE版本8(8A218A)中:1)OSX应用程序:它工作2)一个可可终端应用程序:它工作。确实如此,我在iOS中开发,这就是为什么它不能工作。我的错!为什么苹果会允许它在OSX而不是iOS上工作?我们在移动端也需要在测试/其他中访问终端命令。不,这是一种设计选择:在iOS中没有通常的“过程”,原因很多:性能、完善、硬件限制等等。