objective-c macos cocoa nstask

objective c - Ejecutando comandos de shell con NSTask-Objective-C Cocoa



macos (1)

He estado buscando días y horas para esto, he visto muchos ejemplos de esto, pero no puedo entender cómo funciona NSTask , digamos que quería ejecutar el comando killall Dock o los defaults write com.apple.Finder AppleShowAllFiles YES algo así, ¿cómo voy a hacer esto?

Sé cómo ejecutar un script de shell externo (sh) pero necesito ser más sofisticado y usar NSTask en su lugar.

¡¡Gracias por cualquier ayuda!!


Podrías hacer algo como:

NSTask *task = [[NSTask alloc] init]; [task setLaunchPath:@"/bin/bash"]; [task setArguments:@[ @"-c", @"/usr/bin/killall Dock" ]]; [task launch];

Exactamente qué ruta de inicio y los argumentos que proporciona están dictados por el comando que desea ejecutar y sus parámetros.