Выполнение Unix-команд в ObjC - PullRequest
2 голосов
/ 18 ноября 2009

Как написать программу для выполнения команды 'ls' в ObjC? Любой API доступен?

Спасибо

Ответы [ 3 ]

6 голосов
/ 18 ноября 2009

NSTask - ваш друг, если скорость не нужна. Если это так, используйте собственные системные вызовы.


Если вас беспокоит только перечисление содержимого каталога, прочитайте Руководство по низкоуровневому управлению файлами . Особенно Перечисление содержимого каталога может быть интересным. $

Если это все еще не достаточно быстро, используйте C API. Смотрите этот вопрос: Как вы получаете список каталогов в C .

3 голосов
/ 18 ноября 2009

Насколько я знаю, Objective C построен на C, поэтому у вас должен быть доступ ко всем стандартным возможностям UNIXy, среди которых:

  • system().
  • fork().
  • exec() семейство.
  • popen().
1 голос
/ 18 ноября 2009

Не забудьте о posix_spawn(), когда вам нужно осуществлять контроль над вашими подпроцессами на уровне диктатуры.

Конечно, если вы просто хотите сделать управление файловой системой и самоанализ из Какао, посмотрите не дальше NSFileManager.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...