NSTaskで外部コマンドを実行する場合、外部コマンドをフルパスで指定しないといけないらしい。マシン環境によってコマンドはマシンによって"/opt/local/bin"だったり"/usr/local/bin"だったりするので、フルパスでコマンドを指定すると動かなかったりするので、"/bin/sh -c"を経由させてコマンドの実行パスを解決すると幸せになれるみたいです。 #import <Foundation/Foundation.h> int main(void) { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; NSTask *task = [[NSTask alloc] init]; NSPipe *pipe = [[NSPipe alloc] init]; [task setLaunchPath: @"/bin