애플은 http://developer.apple.com/mac/library/samplecode/Moriarity/
TaskWrapper.m 모든 영리한 물건을 포함 ... 그 대부분의 작업을 수행하는 방법을 보여줍니다 멋진 예제 코드를 가지고 있지만, 당신은 할 수 있도록하려는 때문에 작업에 데이터를 전송하기 위해, 당신과 같이, 그것을 조금 확장해야합니다 :
[task setStandardInput: [NSPipe pipe]];
이 타에 입력을 보내려면 SK, 당신은 할 수 있습니다 :
[[[task standardInput] fileHandleForWriting] writeData: ...];
데이터로 NSTextField있는 값을 설정하려면, 당신은 같은 것을 수행 할 수 있습니다
NSData *data = [[inputTextField stringValue] dataUsingEncoding:NSUTF8StringEncoding];
을 ... 그리고 현재 작업 디렉토리를 설정 귀하의 하위 작업에 대한 사용 [NSTask setCurrentDirectoryPath:]
예 :
[task setCurrentDirectoryPath:@"/blah/blah"];
[task setLaunchPath:@"/blah/blah/server.sh"];
.... (other setup code)
[task launch];
한 가지 더 ... 나는 "CD/ㅋ/ㅋ"다음 "./server.sh"를 보내 얼마나 찰리를 시작? – objectiveccoder001
내 대답이 업데이트 된 방법을 보여주기 위해 업데이트되었습니다. 도움이 되었으면 좋겠어요 .- –
또한, 뭔가를 보낸 후 터미널에서 데이터를 얻는 방법은 무엇입니까? 나는 그것을 어떻게 행하는 것과 혼돈 스럽다. – objectiveccoder001