你們知道如何從你的GUI應用程序運行終端命令嗎?我需要爲我的應用編碼。例如,如果我在終端輸入「netstat」,它會給我所有的端口。我想從我的Xcode應用程序。那可能嗎? BTW它不只是在「netstat的」命令,它可能是「命令......」從GUI應用程序運行終端命令?
感謝, 凱文
你們知道如何從你的GUI應用程序運行終端命令嗎?我需要爲我的應用編碼。例如,如果我在終端輸入「netstat」,它會給我所有的端口。我想從我的Xcode應用程序。那可能嗎? BTW它不只是在「netstat的」命令,它可能是「命令......」從GUI應用程序運行終端命令?
感謝, 凱文
下面是我剛剛在使用NSTask的應用程序中刪除的代碼。
NSTask* task = [[[NSTask alloc] init] autorelease];
[task setLaunchPath: @"/usr/bin/java"];
NSArray* args = [NSArray arrayWithObjects: @"-jar", jar, @"--cue", inp, @"--dir", dir, mp3, nil];
[task setArguments: args];
taskOutputFile = [[self createTmpFile] retain];
NSFileHandle* taskOutput = [NSFileHandle fileHandleForWritingAtPath:taskOutputFile];
[task setStandardOutput: taskOutput];
[task launch];
這在臨時文件啓動一個應用程序(JAVA),並記錄輸出
如果你願意下降到C,你可以只使用system()
功能。當然,這會打印命令的結果。如果你想存儲命令的結果,你可能會想要使用管道。
看看NSTask,看看更像可可這樣做的方式。