Я хочу запустить простую команду из моего приложения Cocoa через код, НЕ создавая сценарий оболочки и запуская его таким образом, но запуская его через приложение, имея возможность определять все и менять его на лету.Как запустить команду оболочки из моего приложения Cocoa?
ответ
Использовать NSTask
. http://www.cocoadev.com/index.pl?NSTask
thats very stange hmmm ... – streetparade
Функция
void runSystemCommand(NSString *cmd)
{
[[NSTask launchedTaskWithLaunchPath:@"/bin/sh"
arguments:[NSArray arrayWithObjects:@"-c", cmd, nil]]
waitUntilExit];
}
Пример использования:
#import <Foundation/Foundation.h>
void runSystemCommand(NSString *cmd)
{
[[NSTask launchedTaskWithLaunchPath:@"/bin/sh"
arguments:[NSArray arrayWithObjects:@"-c", cmd, nil]]
waitUntilExit];
}
int main(int argc, const char **argv)
{
NSAutoreleasePool *pool;
pool = [NSAutoreleasePool new];
runSystemCommand(@"ls");
[pool release];
return 0;
}
ответ streetparade дал не будет работать большую часть времени, обратитесь к этой статье
Это не касается прямого ответа на уличную улицу. Что не так с ответом (помимо общей глупости использования оболочки для запуска команд вместо того, чтобы просто запускать их самостоятельно)? –
NSTask - это путь, как отмечали другие. Но если ваш скрипт должен работать с правами администратора, всегда есть STPrivilegedTask.
- 1. Как запустить команду в терминале из моего приложения Cocoa?
- 2. запустить команду оболочки из java
- 3. Запустить команду оболочки из Django
- 4. Запустить команду оболочки из jar?
- 5. Запустить команду оболочки из PHP
- 6. Сценарий оболочки Cocoa Objective-C из приложения?
- 7. FFmpeg запустить команду оболочки
- 8. Как запустить команду оболочки из компонента joomla
- 9. Как запустить команду оболочки из теста Behat?
- 10. Как отключить перетаскивание из моего приложения Cocoa?
- 11. Запустить команду оболочки в PHP из MAMP
- 12. Как запустить двоичный файл из приложения Cocoa?
- 13. Как запустить команду оболочки Android от Unity3D
- 14. Как запустить команду оболочки без forking
- 15. Запустить команду gdb из сценария оболочки
- 16. Запустить команду ant из сценария оболочки
- 17. Как запустить команду оболочки через PHP-код?
- 18. NodeJS - Запустить команду оболочки, выйти, передать в команду оболочки
- 19. Необходимо запустить команду оболочки android
- 20. Запустите команду оболочки UEFI изнутри приложения UEFI
- 21. Как запустить команду оболочки в JavaScript
- 22. android: как запустить команду оболочки изнутри кода
- 23. Запустить команду оболочки из переменной в сценарии оболочки
- 24. Как запустить скрипт оболочки из приложения silverlight?
- 25. Как запустить команду оболочки в C
- 26. Как запустить команду windows «mklink» из приложения vb.net?
- 27. Запустить браузер из моего приложения
- 28. Запустить команду оболочки для стороннего приложения, пропустить аргументы файла
- 29. Как запустить команду оболочки в какао и получить выход?
- 30. Как запустить команду «jobs» в сценарии оболочки?
Возможный дубликат [Выполнение команды терминала из приложения Cocoa] (http://stackoverflow.com/questions/412562/execute-a-terminal-command-from-a-cocoa-app) – outis