Использование awk с NSTask - PullRequest
       10

Использование awk с NSTask

0 голосов
/ 09 августа 2009

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

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

с NSTask? Я уже пытался установить / 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

Буду признателен за любую помощь:)

Ответы [ 2 ]

2 голосов
/ 11 августа 2009

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

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

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

2 голосов
/ 09 августа 2009

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

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

...