В объективе-c я могу сделать следующее:
NSTask* foo = [NSTask alloc]init];
[foo setLaunchPath:@"/usr/bin/open"];
[foo setArguments:[NSArray arrayWithObjects:
@"/foo/foobar.app/foobarbinary,
nil]];
// Arguments to the command: the name of the
// Applications directory
[foo launch];
// Run the command
[foo release];
Проблема в том, что если foobarbinary принимает аргументы командной строки, как мне их передать? :)
Если я добавлю их в NSArray, то оболочка предполагает, что они являются аргументом «open». Если я добавлю его в строку сразу после foobarbinary (например: @ "foo / foobar.app / foobarbinary -someargument"), то "open" предполагает, что именем файла является "foo / foobar.app / foobarbinary - someargument».
Так как мне передать аргумент аргументу? : S
EDIT. Я попытался использовать команду --args в массиве. Но, похоже, что foobarbinary не получает аргументы, которые я указал далеко --args. : S У кого-нибудь есть пример, на который я могу взглянуть?