「ack」の版間の差分

提供: FreeBSD入門
移動: 案内検索
(ページの作成:「ack とは、プログラマーに最適化したgrepライクなツールです。 '''読み方''' ;ack:えーしーけー __TOC__ == 概要 == * [[grep...」)
 
行7: 行7:
  
 
== 概要 ==
 
== 概要 ==
 +
[[ack]]は、デフォルトでカラフルだったり、[[grep]]から除外したいと思われそうなものをなにも言わずに除外してくれたり、そんなナイスな[[grep]]ライクなコマンドです。
 +
 +
[[ack]]は、[[grep]]の利用を99%置き換えるためにデザインされています。
 +
 +
[[ack]]は、与えられた PATTERN  にマッチする行を入力されたファイルたちから検索します。デフォルトでは、[[ack]]は、マッチした行を表示します。
 +
 +
PATTERN は、[[Perl]]の[[正規表現]]です。
 +
 
* [[grep]]よりもカラフルです。
 
* [[grep]]よりもカラフルです。
 
* コマンドラインが簡単です。
 
* コマンドラインが簡単です。
行14: 行22:
 
== インストール ==
 
== インストール ==
 
{{ports|/usr/ports/textproc/ack|ack}}
 
{{ports|/usr/ports/textproc/ack|ack}}
 +
 +
== ファイルの選択 ==
 +
もし、検索のためのファイル名が指定されない場合は、コマンドライン、もしくは、-x オプションを指定してパイプされる場合、[[ack]]は、検索対象をサブディレクトリから選択します。
 +
 +
[[ack]]のデフォルトのオプションで、特定のファイルやディレクトリが無視されます。
 +
以下のものが含まれます。
 +
 +
* バックアップファイルシリーズ: ファイル名が #*# や ファイル名が~で終わるパターンにマッチするファイル
 +
* コアダンプ: core.\d+ にマッチするファイル
 +
* バージョンコントロール用のディレクトリ: .svn や .git
 +
 +
[[ack]]コマンドに --dump オプションをつけて実行すると、セットされている設定を確認できます。
 +
<syntaxhighlight lang="bash">
 +
ack --dump
 +
</syntaxhighlight>
  
 
== 設定 ==
 
== 設定 ==
行21: 行44:
  
 
== 使い方 ==
 
== 使い方 ==
 +
=== コマンドラインオプション ===
 +
<syntaxhighlight lang="bash">
 +
% ack --help
 +
Usage: ack [OPTION]... PATTERN [FILES OR DIRECTORIES]
 +
 +
Search for PATTERN in each source file in the tree from the current
 +
directory on down.  If any files or directories are specified, then
 +
only those files and directories are checked.  ack may also search
 +
STDIN, but only if no file or directory arguments are specified,
 +
or if one of them is "-".
 +
 +
Default switches may be specified in ACK_OPTIONS environment variable or
 +
an .ackrc file. If you want no dependency on the environment, turn it
 +
off with --noenv.
 +
 +
Example: ack -i select
 +
 +
Searching:
 +
  -i, --ignore-case            Ignore case distinctions in PATTERN
 +
  --[no]smart-case              Ignore case distinctions in PATTERN,
 +
                                only if PATTERN contains no upper case.
 +
                                Ignored if -i is specified
 +
  -v, --invert-match            Invert match: select non-matching lines
 +
  -w, --word-regexp            Force PATTERN to match only whole words
 +
  -Q, --literal                Quote all metacharacters; PATTERN is literal
 +
 +
Search output:
 +
  --lines=NUM                  Only print line(s) NUM of each file
 +
  -l, --files-with-matches      Only print filenames containing matches
 +
  -L, --files-without-matches  Only print filenames with no matches
 +
  --output=expr                Output the evaluation of expr for each line
 +
                                (turns off text highlighting)
 +
  -o                            Show only the part of a line matching PATTERN
 +
                                Same as --output='$&'
 +
  --passthru                    Print all lines, whether matching or not
 +
  --match PATTERN              Specify PATTERN explicitly.
 +
  -m, --max-count=NUM          Stop searching in each file after NUM matches
 +
  -1                            Stop searching after one match of any kind
 +
  -H, --with-filename          Print the filename for each match (default:
 +
                                on unless explicitly searching a single file)
 +
  -h, --no-filename            Suppress the prefixing filename on output
 +
  -c, --count                  Show number of lines matching per file
 +
  --[no]column                  Show the column number of the first match
 +
 +
  -A NUM, --after-context=NUM  Print NUM lines of trailing context after
 +
                                matching lines.
 +
  -B NUM, --before-context=NUM  Print NUM lines of leading context before
 +
                                matching lines.
 +
  -C [NUM], --context[=NUM]    Print NUM lines (default 2) of output context.
 +
 +
  --print0                      Print null byte as separator between filenames,
 +
                                only works with -f, -g, -l, -L or -c.
 +
 +
  -s                            Suppress error messages about nonexistent or
 +
                                unreadable files.
 +
 +
File presentation:
 +
  --pager=COMMAND              Pipes all ack output through COMMAND.  For
 +
                                example, --pager="less -R".  Ignored if output
 +
                                is redirected.
 +
  --nopager                    Do not send output through a pager.  Cancels
 +
                                any setting in ~/.ackrc, ACK_PAGER or
 +
                                ACK_PAGER_COLOR.
 +
  --[no]heading                Print a filename heading above each file's
 +
                                results.  (default: on when used interactively)
 +
  --[no]break                  Print a break between results from different
 +
                                files.  (default: on when used interactively)
 +
  --group                      Same as --heading --break
 +
  --nogroup                    Same as --noheading --nobreak
 +
  --[no]color                  Highlight the matching text (default: on unless
 +
                                output is redirected, or on Windows)
 +
  --[no]colour                  Same as --[no]color
 +
  --color-filename=COLOR
 +
  --color-match=COLOR
 +
  --color-lineno=COLOR          Set the color for filenames, matches, and line
 +
                                numbers.
 +
  --flush                      Flush output immediately, even when ack is used
 +
                                non-interactively (when output goes to a pipe or
 +
                                file).
 +
 +
 +
File finding:
 +
  -f                            Only print the files selected, without
 +
                                searching.  The PATTERN must not be specified.
 +
  -g                            Same as -f, but only select files matching
 +
                                PATTERN.
 +
  --sort-files                  Sort the found files lexically.
 +
  --show-types                  Show which types each file has.
 +
  --files-from=FILE            Read the list of files to search from FILE.
 +
  -x                            Read the list of files to search from STDIN.
 +
 +
File inclusion/exclusion:
 +
  --[no]ignore-dir=name        Add/remove directory from list of ignored dirs
 +
  --[no]ignore-directory=name  Synonym for ignore-dir
 +
  --ignore-file=filter          Add filter for ignoring files
 +
  -r, -R, --recurse            Recurse into subdirectories (default: on)
 +
  -n, --no-recurse              No descending into subdirectories
 +
  --[no]follow                  Follow symlinks.  Default is off.
 +
  -k, --known-types            Include only files of types that ack recognizes.
 +
 +
  --type=X                      Include only X files, where X is a recognized
 +
                                filetype.
 +
  --type=noX                    Exclude X files.
 +
                                See "ack --help-types" for supported filetypes.
 +
 +
File type specification:
 +
  --type-set TYPE:FILTER:FILTERARGS
 +
                                Files with the given FILTERARGS applied to the
 +
                                given FILTER are recognized as being of type
 +
                                TYPE. This replaces an existing definition for
 +
                                type TYPE.
 +
  --type-add TYPE:FILTER:FILTERARGS
 +
                                Files with the given FILTERARGS applied to the
 +
                                given FILTER are recognized as being type TYPE.
 +
  --type-del TYPE              Removes all filters associated with TYPE.
 +
 +
 +
Miscellaneous:
 +
  --[no]env                    Ignore environment variables and global ackrc
 +
                                files.  --env is legal but redundant.
 +
  --ackrc=filename              Specify an ackrc file to use
 +
  --ignore-ack-defaults        Ignore default definitions included with ack.
 +
  --create-ackrc                Outputs a default ackrc for your customization
 +
                                to standard output.
 +
  --help, -?                    This help
 +
  --help-types                  Display all known types
 +
  --dump                        Dump information on which options are loaded
 +
                                from which RC files
 +
  --[no]filter                  Force ack to treat standard input as a pipe
 +
                                (--filter) or tty (--nofilter)
 +
  --man                        Man page
 +
  --version                    Display version & copyright
 +
  --thpppt                      Bill the Cat
 +
  --bar                        The warning admiral
 +
  --cathy                      Chocolate! Chocolate! Chocolate!
 +
 +
Exit status is 0 if match, 1 if no match.
 +
 +
This is version 2.12 of ack.
 +
</syntaxhighlight>
 +
 +
=== ファイルのタイプ ===
 +
[[ack]]にファイルタイプを指定する場合は、 --type=TYPE 形式か、 --TYPE 形式で指定します。[[Perl]]を対象にする例だと、 --type=perl か --perl と指定します。
 +
<syntaxhighlight lang="bash">
 +
% ack --help-types
 +
Usage: ack [OPTION]... PATTERN [FILES OR DIRECTORIES]
 +
 +
The following is the list of filetypes supported by ack.  You can
 +
specify a file type with the --type=TYPE format, or the --TYPE
 +
format.  For example, both --type=perl and --perl work.
 +
 +
Note that some extensions may appear in multiple types.  For example,
 +
.pod files are both Perl and Parrot.
 +
 +
    --[no]actionscript .as .mxml
 +
    --[no]ada          .ada .adb .ads
 +
    --[no]asm          .asm .s
 +
    --[no]asp          .asp
 +
    --[no]aspx        .master .ascx .asmx .aspx .svc
 +
    --[no]batch        .bat .cmd
 +
    --[no]cc          .c .h .xs
 +
    --[no]cfmx        .cfc .cfm .cfml
 +
    --[no]clojure      .clj
 +
    --[no]cmake        CMakeLists.txt; .cmake
 +
    --[no]coffeescript .coffee
 +
    --[no]cpp          .cpp .cc .cxx .m .hpp .hh .h .hxx
 +
    --[no]csharp      .cs
 +
    --[no]css          .css
 +
    --[no]dart        .dart
 +
    --[no]delphi      .pas .int .dfm .nfm .dof .dpk .dproj .groupproj .bdsgroup .bdsproj
 +
    --[no]elisp        .el
 +
    --[no]elixir      .ex .exs
 +
    --[no]erlang      .erl .hrl
 +
    --[no]fortran      .f .f77 .f90 .f95 .f03 .for .ftn .fpp
 +
    --[no]go          .go
 +
    --[no]groovy      .groovy .gtmpl .gpp .grunit .gradle
 +
    --[no]haskell      .hs .lhs
 +
    --[no]hh          .h
 +
    --[no]html        .htm .html
 +
    --[no]java        .java .properties
 +
    --[no]js          .js
 +
    --[no]json        .json
 +
    --[no]jsp          .jsp .jspx .jhtm .jhtml
 +
    --[no]less        .less
 +
    --[no]lisp        .lisp .lsp
 +
    --[no]lua          .lua; first line matches /^#!.*\blua(jit)?/
 +
    --[no]make        .mk; .mak; makefile; Makefile; GNUmakefile
 +
    --[no]matlab      .m
 +
    --[no]objc        .m .h
 +
    --[no]objcpp      .mm .h
 +
    --[no]ocaml        .ml .mli
 +
    --[no]parrot      .pir .pasm .pmc .ops .pod .pg .tg
 +
    --[no]perl        .pl .pm .pod .t .psgi; first line matches /^#!.*\bperl/
 +
    --[no]perltest    .t
 +
    --[no]php          .php .phpt .php3 .php4 .php5 .phtml; first line matches /^#!.*\bphp/
 +
    --[no]plone        .pt .cpt .metadata .cpy .py
 +
    --[no]python      .py; first line matches /^#!.*\bpython/
 +
    --[no]rake        Rakefile
 +
    --[no]rr          .R
 +
    --[no]ruby        .rb .rhtml .rjs .rxml .erb .rake .spec; Rakefile; first line matches /^#!.*\bruby/
 +
    --[no]rust        .rs
 +
    --[no]sass        .sass .scss
 +
    --[no]scala        .scala
 +
    --[no]scheme      .scm .ss
 +
    --[no]shell        .sh .bash .csh .tcsh .ksh .zsh .fish; first line matches /^#!.*\b(?:ba|t?c|k|z|fi)?sh\b/
 +
    --[no]smalltalk    .st
 +
    --[no]sql          .sql .ctl
 +
    --[no]tcl          .tcl .itcl .itk
 +
    --[no]tex          .tex .cls .sty
 +
    --[no]tt          .tt .tt2 .ttml
 +
    --[no]vb          .bas .cls .frm .ctl .vb .resx
 +
    --[no]verilog      .v .vh .sv
 +
    --[no]vhdl        .vhd .vhdl
 +
    --[no]vim          .vim
 +
    --[no]xml          .xml .dtd .xsl .xslt .ent; first line matches /<[?]xml/
 +
    --[no]yaml        .yaml .yml
 +
</syntaxhighlight>
 +
 +
=== 単純な使い方 ===
 +
ファイル・ディレクトリを指定しないと、カレントディレクトリを再帰的に見れくれます。
 +
<syntaxhighlight lang="bash">
 +
ack pattern
 +
</syntaxhighlight>
 +
 +
=== ファイルタイプを選択する ===
 +
==== PHPから探す ====
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
ack --php filter_input
 
ack --php filter_input
 +
</syntaxhighlight>
 +
==== HTMLから探す ====
 +
<syntaxhighlight lang="bash">
 +
ack --html filter_input
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
== 関連項目 ==
 
== 関連項目 ==
* [[the_silver_searcher]] (ag)
+
* [[The Silver Searcher]] (ag)
 
* [[開発ツール]]
 
* [[開発ツール]]
 
<!-- vim: fileencoding=utf-8 filetype=mediawiki
 
<!-- vim: fileencoding=utf-8 filetype=mediawiki
 
-->
 
-->

2013年12月12日 (木) 00:26時点における版

ack とは、プログラマーに最適化したgrepライクなツールです。

読み方

ack
えーしーけー

概要

ackは、デフォルトでカラフルだったり、grepから除外したいと思われそうなものをなにも言わずに除外してくれたり、そんなナイスなgrepライクなコマンドです。

ackは、grepの利用を99%置き換えるためにデザインされています。

ackは、与えられた PATTERN にマッチする行を入力されたファイルたちから検索します。デフォルトでは、ackは、マッチした行を表示します。

PATTERN は、Perl正規表現です。

  • grepよりもカラフルです。
  • コマンドラインが簡単です。
    • grepfindを駆使してやってきたことが、ackだけで簡素に完結できます。
  • .svn を無視してくれます。

インストール

FreeBSDにインストールする場合

ports コレクションからインストールする場合

cd /usr/ports/textproc/ack
sudo make install clean

pkgコマンドでインストールする場合

sudo pkg install ack

portinstallコマンドでインストールする場合

sudo portinstall /usr/ports/textproc/ack

ファイルの選択

もし、検索のためのファイル名が指定されない場合は、コマンドライン、もしくは、-x オプションを指定してパイプされる場合、ackは、検索対象をサブディレクトリから選択します。

ackのデフォルトのオプションで、特定のファイルやディレクトリが無視されます。 以下のものが含まれます。

  • バックアップファイルシリーズ: ファイル名が #*# や ファイル名が~で終わるパターンにマッチするファイル
  • コアダンプ: core.\d+ にマッチするファイル
  • バージョンコントロール用のディレクトリ: .svn や .git

ackコマンドに --dump オプションをつけて実行すると、セットされている設定を確認できます。

ack --dump

設定

~/.ackrc

使い方

コマンドラインオプション

% ack --help
Usage: ack [OPTION]... PATTERN [FILES OR DIRECTORIES]
 
Search for PATTERN in each source file in the tree from the current
directory on down.  If any files or directories are specified, then
only those files and directories are checked.  ack may also search
STDIN, but only if no file or directory arguments are specified,
or if one of them is "-".
 
Default switches may be specified in ACK_OPTIONS environment variable or
an .ackrc file. If you want no dependency on the environment, turn it
off with --noenv.
 
Example: ack -i select
 
Searching:
  -i, --ignore-case             Ignore case distinctions in PATTERN
  --[no]smart-case              Ignore case distinctions in PATTERN,
                                only if PATTERN contains no upper case.
                                Ignored if -i is specified
  -v, --invert-match            Invert match: select non-matching lines
  -w, --word-regexp             Force PATTERN to match only whole words
  -Q, --literal                 Quote all metacharacters; PATTERN is literal
 
Search output:
  --lines=NUM                   Only print line(s) NUM of each file
  -l, --files-with-matches      Only print filenames containing matches
  -L, --files-without-matches   Only print filenames with no matches
  --output=expr                 Output the evaluation of expr for each line
                                (turns off text highlighting)
  -o                            Show only the part of a line matching PATTERN
                                Same as --output='$&'
  --passthru                    Print all lines, whether matching or not
  --match PATTERN               Specify PATTERN explicitly.
  -m, --max-count=NUM           Stop searching in each file after NUM matches
  -1                            Stop searching after one match of any kind
  -H, --with-filename           Print the filename for each match (default:
                                on unless explicitly searching a single file)
  -h, --no-filename             Suppress the prefixing filename on output
  -c, --count                   Show number of lines matching per file
  --[no]column                  Show the column number of the first match
 
  -A NUM, --after-context=NUM   Print NUM lines of trailing context after
                                matching lines.
  -B NUM, --before-context=NUM  Print NUM lines of leading context before
                                matching lines.
  -C [NUM], --context[=NUM]     Print NUM lines (default 2) of output context.
 
  --print0                      Print null byte as separator between filenames,
                                only works with -f, -g, -l, -L or -c.
 
  -s                            Suppress error messages about nonexistent or
                                unreadable files.
 
File presentation:
  --pager=COMMAND               Pipes all ack output through COMMAND.  For
                                example, --pager="less -R".  Ignored if output
                                is redirected.
  --nopager                     Do not send output through a pager.  Cancels
                                any setting in ~/.ackrc, ACK_PAGER or
                                ACK_PAGER_COLOR.
  --[no]heading                 Print a filename heading above each file's
                                results.  (default: on when used interactively)
  --[no]break                   Print a break between results from different
                                files.  (default: on when used interactively)
  --group                       Same as --heading --break
  --nogroup                     Same as --noheading --nobreak
  --[no]color                   Highlight the matching text (default: on unless
                                output is redirected, or on Windows)
  --[no]colour                  Same as --[no]color
  --color-filename=COLOR
  --color-match=COLOR
  --color-lineno=COLOR          Set the color for filenames, matches, and line
                                numbers.
  --flush                       Flush output immediately, even when ack is used
                                non-interactively (when output goes to a pipe or
                                file).
 
 
File finding:
  -f                            Only print the files selected, without
                                searching.  The PATTERN must not be specified.
  -g                            Same as -f, but only select files matching
                                PATTERN.
  --sort-files                  Sort the found files lexically.
  --show-types                  Show which types each file has.
  --files-from=FILE             Read the list of files to search from FILE.
  -x                            Read the list of files to search from STDIN.
 
File inclusion/exclusion:
  --[no]ignore-dir=name         Add/remove directory from list of ignored dirs
  --[no]ignore-directory=name   Synonym for ignore-dir
  --ignore-file=filter          Add filter for ignoring files
  -r, -R, --recurse             Recurse into subdirectories (default: on)
  -n, --no-recurse              No descending into subdirectories
  --[no]follow                  Follow symlinks.  Default is off.
  -k, --known-types             Include only files of types that ack recognizes.
 
  --type=X                      Include only X files, where X is a recognized
                                filetype.
  --type=noX                    Exclude X files.
                                See "ack --help-types" for supported filetypes.
 
File type specification:
  --type-set TYPE:FILTER:FILTERARGS
                                Files with the given FILTERARGS applied to the
                                given FILTER are recognized as being of type
                                TYPE. This replaces an existing definition for
                                type TYPE.
  --type-add TYPE:FILTER:FILTERARGS
                                Files with the given FILTERARGS applied to the
                                given FILTER are recognized as being type TYPE.
  --type-del TYPE               Removes all filters associated with TYPE.
 
 
Miscellaneous:
  --[no]env                     Ignore environment variables and global ackrc
                                files.  --env is legal but redundant.
  --ackrc=filename              Specify an ackrc file to use
  --ignore-ack-defaults         Ignore default definitions included with ack.
  --create-ackrc                Outputs a default ackrc for your customization
                                to standard output.
  --help, -?                    This help
  --help-types                  Display all known types
  --dump                        Dump information on which options are loaded
                                from which RC files
  --[no]filter                  Force ack to treat standard input as a pipe
                                (--filter) or tty (--nofilter)
  --man                         Man page
  --version                     Display version & copyright
  --thpppt                      Bill the Cat
  --bar                         The warning admiral
  --cathy                       Chocolate! Chocolate! Chocolate!
 
Exit status is 0 if match, 1 if no match.
 
This is version 2.12 of ack.

ファイルのタイプ

ackにファイルタイプを指定する場合は、 --type=TYPE 形式か、 --TYPE 形式で指定します。Perlを対象にする例だと、 --type=perl か --perl と指定します。

% ack --help-types
Usage: ack [OPTION]... PATTERN [FILES OR DIRECTORIES]
 
The following is the list of filetypes supported by ack.  You can
specify a file type with the --type=TYPE format, or the --TYPE
format.  For example, both --type=perl and --perl work.
 
Note that some extensions may appear in multiple types.  For example,
.pod files are both Perl and Parrot.
 
    --[no]actionscript .as .mxml
    --[no]ada          .ada .adb .ads
    --[no]asm          .asm .s
    --[no]asp          .asp
    --[no]aspx         .master .ascx .asmx .aspx .svc
    --[no]batch        .bat .cmd
    --[no]cc           .c .h .xs
    --[no]cfmx         .cfc .cfm .cfml
    --[no]clojure      .clj
    --[no]cmake        CMakeLists.txt; .cmake
    --[no]coffeescript .coffee
    --[no]cpp          .cpp .cc .cxx .m .hpp .hh .h .hxx
    --[no]csharp       .cs
    --[no]css          .css
    --[no]dart         .dart
    --[no]delphi       .pas .int .dfm .nfm .dof .dpk .dproj .groupproj .bdsgroup .bdsproj
    --[no]elisp        .el
    --[no]elixir       .ex .exs
    --[no]erlang       .erl .hrl
    --[no]fortran      .f .f77 .f90 .f95 .f03 .for .ftn .fpp
    --[no]go           .go
    --[no]groovy       .groovy .gtmpl .gpp .grunit .gradle
    --[no]haskell      .hs .lhs
    --[no]hh           .h
    --[no]html         .htm .html
    --[no]java         .java .properties
    --[no]js           .js
    --[no]json         .json
    --[no]jsp          .jsp .jspx .jhtm .jhtml
    --[no]less         .less
    --[no]lisp         .lisp .lsp
    --[no]lua          .lua; first line matches /^#!.*\blua(jit)?/
    --[no]make         .mk; .mak; makefile; Makefile; GNUmakefile
    --[no]matlab       .m
    --[no]objc         .m .h
    --[no]objcpp       .mm .h
    --[no]ocaml        .ml .mli
    --[no]parrot       .pir .pasm .pmc .ops .pod .pg .tg
    --[no]perl         .pl .pm .pod .t .psgi; first line matches /^#!.*\bperl/
    --[no]perltest     .t
    --[no]php          .php .phpt .php3 .php4 .php5 .phtml; first line matches /^#!.*\bphp/
    --[no]plone        .pt .cpt .metadata .cpy .py
    --[no]python       .py; first line matches /^#!.*\bpython/
    --[no]rake         Rakefile
    --[no]rr           .R
    --[no]ruby         .rb .rhtml .rjs .rxml .erb .rake .spec; Rakefile; first line matches /^#!.*\bruby/
    --[no]rust         .rs
    --[no]sass         .sass .scss
    --[no]scala        .scala
    --[no]scheme       .scm .ss
    --[no]shell        .sh .bash .csh .tcsh .ksh .zsh .fish; first line matches /^#!.*\b(?:ba|t?c|k|z|fi)?sh\b/
    --[no]smalltalk    .st
    --[no]sql          .sql .ctl
    --[no]tcl          .tcl .itcl .itk
    --[no]tex          .tex .cls .sty
    --[no]tt           .tt .tt2 .ttml
    --[no]vb           .bas .cls .frm .ctl .vb .resx
    --[no]verilog      .v .vh .sv
    --[no]vhdl         .vhd .vhdl
    --[no]vim          .vim
    --[no]xml          .xml .dtd .xsl .xslt .ent; first line matches /<[?]xml/
    --[no]yaml         .yaml .yml

単純な使い方

ファイル・ディレクトリを指定しないと、カレントディレクトリを再帰的に見れくれます。

ack pattern

ファイルタイプを選択する

PHPから探す

ack --php filter_input

HTMLから探す

ack --html filter_input

関連項目