[LinuxOB] One-Liner

Christian Hesse christian.hesse at linuxob.de
Do Feb 19 23:09:24 CET 2004


On Thursday 19 February 2004 23:02, Daniel Dombrowski wrote:
> On 2004.02.19 22:39, Christian Hesse wrote:
> > Ich habe gleich noch einen. Damit lässt sich in der Kerneldoku jedes
> > Vorkommen von frame finden...
> >
> > find /usr/src/linux/Documentation/ -type f | while read FILE; do
> > GREP=`grep "frame" "$FILE"`; if [ -n "$GREP" ]; then echo "Found in
> > file $FILE:"; echo $GREP; fi; done
>
> Und wo genau ist da jetzt der Untschied zu
>
> grep -R frame /usr/src/linux/Documentation/ | sed -e 's/^/Found in file /'
>
> | sed -e 's/:/:\n/'
>
> (Außer, dass deine Version alle Treffer in jeder Datei ohne
> Zeilenumbruch hintereinanderklatscht)?

Das ist eine Sache, die ich für Alexander zusammengesetzt habe. Wir sind auf 
ein paar Umwegen dahin gekommen...
Es zeigt auf jeden Fall, was mit mit so einem Einzeiler alles machen kann. :)

Inzwischen habe ich das ganze Ding auch als alias gebaut:

alias search='function mysearch { find . -type f | while read FILE; do 
GREP=`grep "$1" "$FILE"`; if [ -n "$GREP" ]; then echo "Found in file 
$FILE:"; echo $GREP; fi; done; }; mysearch'

Mit dem Aufruf

search frame

im entsprechenden Verzeichnis kommen wir zu den gleichen Ergebnissen. Geht 
dann natürlich auch an der Stelle kürzer...

Gruß
  Christian

-- 
Linux - damit der Ausnahmefehler nicht zur Regel wird.




Mehr Informationen über die Mailingliste linux