LX-SYS-shell-grep-OEF
Oefeningen op GREP:

  1. Tik het volgende commando in:

    $ apropos dir

    Wat kunt u met het commando apropos doen? Bekijk de man pages van apropos.

    Probeer ook even hetvolgende:

    $ apropos grep

    $ apropos kill

    Zoek zelf uit hoe killall werkt en doe een test.

  2. Onderzoek de opties -l -v -n en -i voor het commando grep; kijk eerst in de man pagina.
    test telkens op het bestand /etc/passwd voor de string "bash"

  3. Gebruik grep om in /etc/passwd je eigen login details te tonen.

  4. voer de volgende commando's uit als gewone user. Noteer telkens wat het commando doet en interpreteer telkens het resultaat (de teststring false geeft resultaten bij debian based distributies, en de teststring nologin bij red hat based distributies):

    1. $ grep root /etc/passwd
    2. $ grep -n root /etc/passwd
    3. $ grep bash /etc/passwd
    4. $ grep -v bash /etc/passwd
    5. $ grep false /etc/passwd
    6. $ grep nologin /etc/passwd
    7. $ grep -v bash /etc/passwd | grep nologin
    8. $ grep -v bash /etc/passwd | grep false
    9. $ grep -c false /etc/passwd
    10. $ grep -c nologin /etc/passwd

  5. Test en interpreteer het volgende commando:
    $ ls -R /etc | sort | grep host | wc

  6. als we in de zoekstring gebruik maken van ^ (Alt-Gr 6) betekent dit dat we alleen zoeken aan het begin van een regel. Als we in de zoekstring gebruik maken van $ betekent dit dat we zoeken enkel aan het einde van een regel.
    Bekijk de volgende voorbeelden; voer de volgende commando's uit als gewone user.
    Noteer telkens wat het commando doet en interpreteer telkens het resultaat:

    a1) $ grep -v "^#" /etc/ntp.conf

    vergelijk met

    a2) $ grep -v "^#" /etc/ntp.conf | grep -v "^[ ]*quot;
    ---------------------------------------------------------
    b1) $ grep "lsquot; ~/.bash_history

    vergelijk met

    b2) $ grep "ls" ~/.bash_history

  7. Ga naar de website: http://www.panix.com/~elflord/unix/grep.html
    en bekijk wat je kan doen met de . wildcard.
    Ga verder en probeer te begrijpen wat regular expressions zijn en hoe je ze moet gebruiken.

  8. Hoe vind ik in een tekst het woord 'een' terug maar niet een kombinatie van een zoals 'heengaan'?

  9. Hoe vind ik in een tekst een regel terug die begint met het dollarteken?

  10. Om in mijn huidige directory alle bestanden te onderzoeken op het woord "ftp" kan ik
    $ grep ftp *
    intikken. Dit commando onderzoekt echter niet de subdirectories. Met welke optie kan ik toch ook subdirectories onderzoeken? Test dit in /etc.