从Cocoa应用程序执行终端命令

从Cocoa应用程序执行终端命令

如何执行终端命令(如grep)从我的目标-C可可申请?



至尊宝的传说
浏览 900回答 3
3回答

万千封印

这个runCommand方法不需要脚本文件,只需运行一个命令行:- (NSString *)runCommand:(NSString *)commandToRun{     NSTask *task = [[NSTask alloc] init];     [task setLaunchPath:@"/bin/sh"];     NSArray *arguments = [NSArray arrayWithObjects:                           @"-c" ,                           [NSString stringWithFormat:@"%@", commandToRun],                           nil];     NSLog(@"run command:%@", commandToRun);     [task setArguments:arguments];     NSPipe *pipe = [NSPipe pipe];     [task setStandardOutput:pipe];     NSFileHandle *file = [pipe fileHandleForReading];     [task launch];     NSData *data = [file readDataToEndOfFile];     NSString *output = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];     return output;}您可以这样使用这个方法:NSString *output = runCommand(@"ps -A | grep mysql");
打开App,查看更多内容
随时随地看视频慕课网APP