Запустить скрипт оболочки из Objective-C

Я пытаюсь запустить сценарий оболочки, который находится в NSTextView, Я знаю, что могу использовать NSTask чтобы сделать это, но мне было интересно, что будет лучше, если сценарий существует только в памяти (текстовое представление), но не на диске.

Должен ли я временно записать его на диск или запустить как строку?

И какие параметры я передаю NSTask? Должен ли я извлечь линию Шебанга и передать ее как launchPath?

1 ответ

Решение

Вы можете выполнить /bin/bash как твой NSTask, а также setStandardInput для NSPipe, Затем напишите NSString содержащий ваш скрипт в канал через его fileHandleForWriting чтобы избежать создания файла на диске.

Другие вопросы по тегам