Dateien finden und nach Inhalten durchsuchen

Finde alle Dateien und Verzeichnisse mit dem Dateinamen oder Verzeichnisnamen "example.php" rekursiv in allen Unterverzeichnissen ab dem aktuellen Verzeichnis

find ./* -name "example.php"

Finde alle Dateien mit der Endung .php rekursiv in allen Unterverzeichnissen ab dem aktuellen Verzeichnis

find ./* -name "*.php"

Finde alle Dateien und Verzeichnisse, die den string "test" enthalten, rekursiv in allen Unterverzeichnissen ab dem aktuellen Verzeichnis

find ./* -name "*test*"

Finde alle Dateien und Verzeichnisse, die einem bestimmten User gehören

find ./* -user {username}

Finde alle Dateien und Verzeichnisse, die einer bestimmten Gruppe gehören

find ./* -group {groupname}

Finde alle Dateien mit einem bestimmten modification date

Beispiel hier: 11.03.2015

find ./* -type f -name "*" -newermt 2015-03-11 ! -newermt 2015-03-12

Durchsuche alle Dateien nach dem Suchbegriff rekursiv in allen Unterverzeichnissen ab dem aktuellen Verzeichnis

grep -ir suchbegriff *

Durchsuche alle Dateien rekursiv in allen Unterverzeichnissen ab dem aktuellen Verzeichnis und zeige Ergebnisse an, die nicht den Suchbegriff enthalten (invertiert)

grep -irv suchbegriff *

Durchsuche bestimmte Dateien oder Dateien mit bestimmten Dateiendungen nach dem Suchbegriff rekursiv in allen Unterverzeichnissen ab dem aktuellen Verzeichnis

grep -ir --include=\<file or file extension> '<searchterm>' ./

Zeige mir auch die vorangehende Zeile an nach jedem Match

grep -ir -B1 "hosts:" hosts.yml

Zeige mir auch die nachfolgende Zeile an nach jedem Match

grep -ir -A1 "hosts:" hosts.yml

Zeige mir auch die vorangehende und die nachfolgende Zeile an nach jedem Match

grep -ir -C1 "hosts:" hosts.yml

Zähle die Matches und zeige die Summe an

grep -ir -c "hosts:" hosts.yml

Liste nur die Verzeichnisse auf

ls -l | grep "^d"

Setze dafür einen dauerhaften alias

Folgenden Befehl in die ~/.bashrc (Bash) bzw. Äquivalent (~/.zshrc bei zsh) im Home-Verzeichnis einfügen:

alias lsd="ls -l | grep '^d'"