私は基本的にack foo *.citrusを実行し、現在のディレクトリとその下にあるすべての Citrus ファイルで ack をドリルダウンして文字列 'foo' を見つけたいだけです。問題は、現在のディレクトリに Citrus ファイルがない場合、これが機能しないことです。
-Gいじってみましたが成功しませんでした。検索対象を特定の拡張子のファイルに限定するためだけに、.ackrc にファイル タイプを追加する必要がありますか?
私は基本的にack foo *.citrusを実行し、現在のディレクトリとその下にあるすべての Citrus ファイルで ack をドリルダウンして文字列 'foo' を見つけたいだけです。問題は、現在のディレクトリに Citrus ファイルがない場合、これが機能しないことです。
-Gいじってみましたが成功しませんでした。検索対象を特定の拡張子のファイルに限定するためだけに、.ackrc にファイル タイプを追加する必要がありますか?
デフォルトでack
は、既知のタイプ (*.java、*.cpp など) のファイルのみを検索します。ファイル *.citrus については認識しないため、そのようなファイルを検索するには、-a
cmd ライン スイッチを使用する必要があります。
$ack -a -G '\.citrus$' foo
1.d/1.citrus
1:foo_bar
必要ない場合は、.ackrc に設定する必要はありません。環境で ACK_OPTIONS を設定するか、コマンド ラインで --type-set 引数を指定することもできます。アックは関係ありません。