#!/bin/sh #' --- #' title: "Lösungsversuch zum RegEXP-Kurs 03 - egrep" #' author: "tegula" #' date: " 24 4 2022" #' output: html_document #' --- # ------------------------ # ------------------------ #' **Ursprünglich Aufgaben:** https://debianforum.de/forum/viewtopic.php?t=184043 #' ** Hier bearbeite Variante:** "Arbeite vorerst mal nur mit den Musterdateien und gehe dafuer die Einheit nochmal durch. Mit Musterdateien ist es wie ich beschreibe. Wenn du es auf der Kommandozeile angibst, dann treten weitere Effekte auf, die dich nun verwirren" ( https://debianforum.de/forum/viewtopic.php?p=1300875#p1300875 ) # ------------------------ # ------------------------ # AUfgabe 1 bis 6 for musterdatei in a1.txt a2.txt a3.txt a4.txt a5.txt a6.txt; do printf "${musterdatei}: " # Aufgaben nummer bzw. Dateiname ausgeben cat ${musterdatei} # Inhalt der Musterdatei ausgeben printf "\n \n" # Zwei Zeilenumbrüche ausgeben (= mindestens eine Leerzeile) egrep --line-number -f ${musterdatei} schwaebische-kunde.txt # Muster in schwaebische-kunde.txt suchen printf "******\n\n" # Trenner zwischen einzelnen Aufgaben done # ------------------------ # ------------------------ # Aufgabe 7 (fgrep statt egrep) ## --> Unterschied zu Aufgabe 1-6 (egrep): Fragezeichen ("?") und (".") müssen nicht escapet werden, weil fgrep (im Gegensatz zu egrep) die, ihm übergebenen, Muster, immer als literale Wörter interpretiert. for musterdatei in a1.txt a2.txt a3.txt a4.txt a5_fuer_fgrep.txt a6_fuer_fgrep.txt; do printf "${musterdatei}: " # Aufgaben nummer bzw. Dateiname ausgeben cat ${musterdatei} # Inhalt der Musterdatei ausgeben printf "\n \n" # Zwei Zeilenumbrüche ausgeben (= mindestens eine Leerzeile) fgrep --line-number -f ${musterdatei} schwaebische-kunde.txt # Muster in schwaebische-kunde.txt suchen printf "******\n\n" # Trenner zwischen einzelnen Aufgaben done # ------------------------ # ------------------------ # Aufgabe 8 ## --> Die Mustersuche wird innerhalb der Datei RegExp-Kurs_02_Aufgabe_14.R ( https://debianforum.de/forum/pastebin/?mode=view&s=41639 ) durchgeführt. # Klammern ## --> Klammern haben eine Sonderbedeutung innerhalb von egrep --> müssen (auch in Musterdatei) escapet werdem cat a8_klammern.txt # Inhalt der Musterdatei ausgeben egrep --line-number -f a8_klammern.txt RegExp-Kurs_02_Aufgabe_14.R # Sterne ## --> Das Sternchen (*) hat eine Sonderbedeutung innerhalb von egrep --> muss (auch in Musterdatei) escapet werdem cat a8_sterne.txt # Inhalt der Musterdatei ausgeben egrep --line-number -f a8_sterne.txt RegExp-Kurs_02_Aufgabe_14.R # Punkte ## --> Der Punkt (".") hat eine Sonderbedeutung innerhalb von egrep --> muss (auch in Musterdatei) escapet werdem cat a8_punkte.txt # Inhalt der Musterdatei ausgeben egrep --line-number -f a8_punkte.txt RegExp-Kurs_02_Aufgabe_14.R