Question

I have been searching for days and hours for this, I have seen a lot of examples of this, but cannot figure out how NSTask works, let's say I wanted to execute the command killall Dock or defaults write com.apple.Finder AppleShowAllFiles YES something like that, how would I go about doing this.

I know how to execute an external shell script (sh) but need to be more sophisticated and use NSTask instead.

Thanks for any help!!

Was it helpful?

Solution

You could do something like:

NSTask *task = [[NSTask alloc] init];
[task setLaunchPath:@"/bin/bash"];
[task setArguments:@[ @"-c", @"/usr/bin/killall Dock" ]];
[task launch];

Exactly what launch path and arguments you provide are dictated by the command you want to run and its parameters.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top