ag / awkを使用して検索するときに「(」タグを使用する方法は?

ag / awkを使用して検索するときに「(」タグを使用する方法は?
$ ag findVersions( src/java/com/google

-bash: syntax error near unexpected token `('

私はそれを参照してエスケープしようとしましたが、適切ではありませんでした。

$ ag findVersions\( src/java/com/google

ERR: pcre_compile failed at position 13. Error: missing )

$ ack findVersions\( src/java/com/twitter
Invalid regex 'findVersions(':
  Unmatched ( in regex; marked by <-- HERE in m/findVersions( <-- HERE / at /opt/bin/ack line 2989.

答え1

最初の引数は正規表現なので、次のことを行う必要があります。正規表現の特殊文字をエスケープしてシェルから保護する必要があります。

ag 'findVersions\(' src/java/com/google

関連情報