私は NSTask を使用してこれを行うためのソリューションを読みました:それらはすべて非常に長く見えます...したがって、このコードを使用してまったく同じことを行うことができました(標準出力と標準エラーの両方を取得します):
NSTask *task = [NSTask new];
[task setLaunchPath:@"/bin/sh"];
[task setArguments:@[ @"-c", @"aCommand"]];
NSString *stringToRemove = [task description];
[task launch];
NSString *output = [[task description] stringByReplacingOccurrencesOfString:stringToRemove withString:@""];
このソリューションを使用することの欠点はありますか? 出力をフィルタリングするより短い方法はありますか?