Я пытаюсь получить последнюю дату изменения в дереве каталогов. Это прекрасно работает в терминале:Сбрасывание обратных косых черт в аргументах NSTask?
find . ! -path "*.git*" -exec stat -f "%m" \{} \; | sort -n -r | head -1
Но когда я пытаюсь это с NSTask я получаю
find: -exec: no terminating ";" or "+"
В массиве ARGS для NSTask, который я использую, я бежал обратный слэш:
NSArray *args = @[@".",
@"!",
@"-path",
@"*.git*",
@"-exec",
@"stat",
@"-f",
@"%m",
@"\\{}",
@"\\;",
@"|",
@"sort",
@"-n",
@"-r",
@"|",
@"head",
@"-1"];
Итак, что мне здесь не хватает? Я также попытался удалить backslahes все вместе, но это дало мне ошибку «find: |: unknown primary or operator».
Я думаю, что вы должны сделать один nstask для каждой команды вы используете, то труба их стандартно для следующего командного стандарта в. – JoshRagem