我正在使用NSTask执行一系列长时间运行的命令,如下所示:
commandToRun = @"command 1;command2"; NSArray *arguments = [NSArray arrayWithObjects: @"-c", commandToRun, nil]; self.task = [[NSTask alloc] init]; [self.task setLaunchPath: @"/bin/sh"]; [self.task setArguments: arguments]; [self.task launch];
这将为shell创建一个进程,并为当时正在运行的任何命令创建子进程(命令1或命令2).如果我用[self.task terminate]
它杀死任务只会杀死父进程.有没有办法识别和杀死孩子?