include "NSLog.incl" local fn RunCommand( command as CFStringRef ) as CFStringRef TaskRef tsk = fn TaskInit TaskSetExecutableURL( tsk, fn URLFileURLWithPath( @"/bin/sh" ) ) TaskSetArguments( tsk, @[@"-c",command] ) PipeRef pip = fn PipeInit TaskSetStandardOutput( tsk, pip ) FileHandleRef fh = fn PipeFileHandleForReading( pip ) fn TaskLaunch( tsk, NULL ) CFDataRef dta = fn FileHandleReadDataToEndOfFile( fh, NULL ) CFStringRef outputStr = fn StringWithData( dta, NSUTF8StringEncoding ) end fn = outputStr NSLog( @"%@", fn RunCommand( @"cal 1969" ) ) HandleEvents