Inhaltsverzeichnis

ack

ack ist eine Alternative zu grep.

Farben ändern

Um die Standardfarben zu ändern, gibt es entsprechende Kommandozeilenparameter bzw. Umgebungsvariablen:

BedeutungKommodozeileUmgebungsvariable
Zeilennummer--color-linenoACK_COLOR_LINENO
Dateiname--color-filenameACK_COLOR_FILENAME
Fundstelle--color-matchACK_COLOR_MATCH

Diese Parameter akzeptieren folgende Argumente:

Vordergrundfarbe:

   black  red  green  yellow  blue  magenta  cyan  white
   bright_black  bright_red      bright_green  bright_yellow
   bright_blue   bright_magenta  bright_cyan   bright_white

Hintergrundfarben:

   on_black  on_red      on_green  on yellow
   on_blue   on_magenta  on_cyan   on_white
   on_bright_black  on_bright_red      on_bright_green  on_bright_yellow
   on_bright_blue   on_bright_magenta  on_bright_cyan   on_bright_white

Vorder- und Hintergrundfarben können auch kombiniert werden:

ack test --color-match="on_red white"

ack-grep unter Ubuntu

Unter Ubuntu (und anderen Debian-basierten Distributionen wie Linux Mint) wird ack als ack-grep installiert und aufgerufen. Um einfach ack verwenden zu können, kann man nach der Installation ein „divert“ machen:

sudo apt-get install ack-grep
sudo dpkg-divert --local --divert /usr/bin/ack --rename --add /usr/bin/ack-grep

Alternativ kann auch ein Alias eingerichtet werden:

alias ack=ack-grep

Dies ist in aktuelleren Distributionen nicht mehr nötig, dort ist ack dirket als Befehl verfügbar.

Dateien ignorieren

Ab Version 2 ist es möglich, Dateien bei der Suche zu ignorieren. Dabei können explizit einzelne Dateien

ack --ignore-file=is:example.txt PATTERN #explicit filename
ack --ignore-file=match:/(gnu)?makefile/ PATTERN #match filename against regexp, case-insensitive

oder alle Dateien mit einer bestimmen Dateinamenerweiterung ausgenommen werden:

ack --ignore-file=ext:txt PATTERN #one extension, without dot
ack --ignore-file=ext:txt,aux PATTERN #two or multiple extension, without dot

Dateitypen (meist mehrere Dateinamenerweiterung) können mit

ack --noTYPENAME

ignoriert werden. Die Liste der Dateitypen, die ack bekannt sind, kann mit

ack --help-types

angezeigt werden.

Installation

Soll oder kann ack nicht über den Paketmanager installiert wenn, kann ack auch als "single-file version" heruntergeladen werden.