Wie man in Linux eine Zeile aus einer Datei und weitere 5 Zeilen danach ausgibt

Angenommen, Sie suchen in den Dateien setenv.sh und setenv.sh.tpl die Zeile, die folgendes enthält:

Djava.rmi.server.hostname

und Sie möchten diese Zeile sowie die nächsten 5 Zeilen ausgeben. Dann verwenden Sie:

find . -type f -name 'setenv.sh*' -exec grep -I -nH -A5 'Djava\\.rmi\\.server\\.hostname' {} \;

Hier ignoriert -I Binärdateien.

Wenn Sie zusätzlich noch 2 Zeilen vorher anzeigen möchten, verwenden Sie:

find . -type f -name 'setenv.sh*' -exec grep -I -nH -B2 -A5 'Djava\\.rmi\\.server\\.hostname' {} \;

Anstelle von -B2 -A5 können Sie -C5 verwenden, wenn Sie jeweils 5 Zeilen vor und nach der gefundenen Zeile anzeigen möchten.