Вопрос

Как бы я использовал эту команду awk:

awk 'NR>1{print $1}' string-to-modify

с НСТАском?Я уже пробовал установить /usr/bin/awk в качестве пути запуска, 'NR>1{print $1}' в качестве аргумента, затем строку, которую нужно изменить в качестве другого аргумента, но все, что я получаю, это следующее:

/usr/bin/awk: syntax error at source line 1
 context is
     >>> ' <<< 
/usr/bin/awk: bailing out at source line 1

Любая помощь будет оценена :)

Это было полезно?

Решение

Сначала удалите одинарные кавычки: NSTask не вызывает оболочку, которая могла бы их интерпретировать.Это причина ошибки, которую вы получаете.

Второй, awk принимает в качестве последнего аргумента имя файла, а не строку.Если вам действительно нужны NSTask и awk, команда оболочки будет такой: echo string | awk ..., который будет включать два NSTAsk и NSPipe.

Наконец, для манипуляций со строками вместо этого используйте NSString, как упоминалось в дримлакс.

Другие советы

Чего вы пытаетесь достичь?Вам не нужно запускать awk для выполнения манипуляций со строками.

Если вы пытаетесь удалить строки из строки, попробуйте использовать что-то вроде NSString. getLineStart:end:contentsEnd:forRange: метод.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top