The NSUserUnixTask class is intended to run unix applications, typically a shell script, from your application. It is intended to execute user-supplied scripts, and will execute them outside of the application's sandbox, if any.


The class is not intended to execute scripts built into an application; for that, use one of the Process, NSAppleScript, or AMWorkflow classes. If the application is sandboxed, then the script must be in the applicationScriptsDirectory folder. A sandboxed application may read from, but not write to, this folder.

If you simply need to execute unix scripts without regard to input or output, use NSUserScriptTask, which can execute any of the specific types. If you need specific control over the input to, or output from, or the error stream of the script, use this class.


Executing the Unix Script

Standard Unix Streams

var standardError: FileHandle?

The standard error stream.

var standardInput: FileHandle?

The standard input stream.

var standardOutput: FileHandle?

The standard output stream.



Implement this block to retrieve an error from the Unix scripted executed by execute(withArguments:completionHandler:).


Inherits From

Conforms To