Вот мой код:
task = [[NSTask alloc] init];
[task setCurrentDirectoryPath:@"/applications/jarvis/brain/"];
[task setLaunchPath:@"/applications/jarvis/brain/server.sh"];
NSPipe * out = [NSPipe pipe];
[task setStandardOutput:out];
[task launch];
[task waitUntilExit];
[task release];
NSFileHandle * read = [out fileHandleForReading];
NSData * dataRead = [read readDataToEndOfFile];
NSString * stringRead = [[[NSString alloc] initWithData:dataRead encoding:NSUTF8StringEncoding] autorelease];
Итак, я пытаюсь воспроизвести это:
cd /applications/jarvis/brain/
./server.sh
но используя NSTask в objective-c.
По какой-то причине, хотя я запускаю этот код, stringRead ничего не возвращает. Он должен возвращать возвращаемый терминал при запуске файла .sh. Правильно?
Любые идеи?
Илия