0

この awk コマンドの使用方法:

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

NSタスクと?/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

どんな助けでも大歓迎です:)

4

2 に答える 2

2

何を達成しようとしていますか?文字列操作を実行するためにawkを起動する必要はありません。

文字列から行を削除しようとしている場合は、NSStringのgetLineStart:end:contentsEnd:forRange:メソッドのようなものを使用してみてください。

于 2009-08-09T03:09:57.080 に答える
2

まず、一重引用符を削除NSTaskします。それらを解釈できるシェルを呼び出しません。これがエラーの原因です。

次に、awk文字列ではなくファイル名を最後の引数として受け取ります。NSTask と awk が本当に必要な場合、シェル コマンドは になりますecho string | awk ...。これには、2 つの NSTask と NSPipe が含まれます。

最後に、文字列操作については、 dreamlaxで言及されているように、代わりに NSString を使用してください。

于 2009-08-11T12:30:19.630 に答える