T-Time (Terminal-Time) sind Udo's kleine Einführungen und Übungen in BASH und Terminal - aka Konsole, xterm, term …
Viel Spaß bei den einzelnen Übungen!
Regular Expression (regex, RegEx) sind Teil der theoretischen Informatik.
RegEx wird gebraucht um nach (mathematischen) Mustern in Dateien zu suchen und die gefundenen Zeilen auszugeben. RegEx ist Bestandteil vieler Programmiersprachen(z.B. Perl, Python, Tcl,…)
Wie schon am Anfang geschrieben ist RegEx das Suchen nach 'Mustern' (Ausdrücken), und nicht nach „Namen“. Die Syntax der Ausdrücke ist in vielen Programmen ähnlich in den einfachen Anweisungen, weicht aber erheblich in den komplexeren ab und ist daher eher vergleichbar mit einer Sprache. (S.a.: WP: Regulärer Ausdruck)
Wir behandeln hier nur ein paar Basics um den Einstieg zu meistern.
Die Ausdrücke bestehen aus Zeichen mit Sonderbedeutung, von denen wir uns folgende näher anschauen:
Siehe auch: man regex (7)
Die Übungen beziehen sich auf unten stehende Beispieldaten. In denen ist gelistet, wer aus welchem Land in welchem Jahr Mr. Olympia wurde:
Zum ausprobieren eigenen sich die Befehle: grep, egrep oder sed. Mehr über die Befehle erfahrt ihr wie immer mit: man $befehl.
Zum experimentieren und herumspielen die Datei 'mrolympia.dat' mit den Beispieldaten herunterladen und ordentlich RegEx'en. (Zum speichern ggf.: Rechtsklick und Speichern_Unter)
Larry Scott USA 1965 1966 Sergio Oliva USA 1967 1968 1969 Arnold Schwarzenegger Österreich 1970 1971 1972 1973 1974 1975 1980 Franco Columbu Italien 1976 1981 Frank Zane USA 1977 1978 1979 Chris Dickerson USA 1982 Samir Bannout Libanon 1983 Lee Haney USA 1984 1985 1986 1987 1988 1989 1990 1991 Dorian Yates Grossbritannien 1992 1993 1994 1995 1996 1997 Ronnie Coleman USA 1998 1999 2000 2001 2002 2003 2004 2005 Jay Cutler USA 2006 2007 2009 2010 Dexter Jackson USA 2008 Phil Heath USA 2011 2012 2013 2014 2015 2016 2017 Shawn Rhoden USA 2018 Brandon Curry USA 2019 # Kommentare # (Daten anlehnend an Wikipedia) # Noch ein Kommentar 24.05.2020 2020-05-24
Mehr RegEx gibt es u.a. auf: https://www.regular-expressions.info
Viel Spaß beim Suchen nach Mustern!
Was wir heute machen wollen:
(!) Wir arbeiten immer im Verzeichnis bs_lug damit wir nicht aus versehen was anderes löschen. Also erst dieses anlegen, und hinein wechseln:
mkdir bs_lug cd bs_lug
Und hier die zugehörigen Kommandos:
mkdir Uebung cd Uebung/ touch file{001..100} cp -rv /etc/[^aeiou]* . dd if=/dev/zero of=100M-file bs=1M count=100 cd .. tar -cvf Uebung.tar Uebung/ # Archive von Ordner "Uebung" erzeugen tar -cvzf Uebung.tgz Uebung/ tar -cvjf Uebung.tar.bz2 Uebung/ less Uebung.tar less Uebung.tar.bz2 # ggf. mit zless oder zcat lesen (müssen u.U. nachinstalliert werden) tar -tvf Uebung.tar rm -rvf Uebung/ tar -xvf Uebung.tar.bz2 find Uebung/ -empty -type f exec rm -rf {} \; # alle 0-Byte-files löschen ls -lh Uebung/ # prüfen ob alle 0-Byte-files gelöscht sind
Diese Seite exportieren: PDF Export