08.05.2007 Treffen der LUG Kaiserslautern

Aus GNU/Linux User Group Kaiserslautern

Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Themen

Reguläre Ausdrücke

Es wird eine Einführung in RegExp (Regular Expressions) gegeben. Sie baut auf dem Vortrag über die Funktionsweise der Shell auf. Auf weitere lustige Funktionen und Verkettungen untereinander wird eingegangen. Die Befehle können in der Shell eingegeben werden und veranschaulichen die Mächtigkeit und Möglichkeiten der Kommandozeile.
Litarische Vorbereitung findet jedeR unter: http://www.google.de/search?q=Regular+Expressions
Dauer ca. 90min

== Exkurs bzgl.

Frage zum tar-Befehl:

Was passiert mit tar-ball beim auspacken, wenn Benutzer nicht im System existieren, dennen im tar-Ball die Dateien zugeordnet sind?

S. sagt Dateien werden mit ids erzeugt, dennen jedoch keine User im System zugeordnet sind.

tar

  tar [OPTION]... [DATEI]...
      -t, --list
             Inhalt eines Archivs anzeigen
      -x, --extract, --get
             Dateien aus Archiv holen
      -c, --create
             neues Archiv erzeugen
      -p, --same-permissions
             Zugriffsrechte beim Auspacken erhalten
      -l, --one-file-system
             beim Erzeugen Dateisystem nicht wechseln
      -f, --file=ARCHIV
          Gerät oder Datei ARCHIV benutzen


Mit dem Befehl

   tar cplf dateisystem_dev_hda2.tar

wird ein tar-Ball erzeugt (c), das den Dateien die gleichen Rechten erhält (p), der tar-Befehl bleibt in dem aktullem Dateisystem, und betrifft z.B. keine gemounteten Dateisysteme (l) und schreibt es in den tar-Ball mit dem Namen hda2.tar (f).

Sehr cooler Befehl zum kopieren von ganzen Dateisystemen

cd /mnt/ && ( cd / && tar cplf - . ) | tar xpvf -


Manual page als Lektüre:

man perlre man sed


Aufgabe:

Wir haben eine Dateieingabe der folgenden Form:

^ Bereich_0  \t Bereich_1 \t Bereich_2 \t Bereich_3 \t Bereich_4 $

und möchten diese in folgende HTML-Form überführen:

<tr><td>Bereich_0</td><td>Bereich_1</td></tr>
<tr><td>Bereich_2</td><td>Bereich_3</td><td>Bereich_4</td></tr>


struktur unseres Dateiinputs

^ Bereich_1  \t Bereich_2 \t Bereich_3 \t Bereich_4 \t Bereich_5 \t B_6 \t B_7 $
^ DE         \t Name      \t Tag       \t Monat     \t Jahr      \t 0   \t 0   $

1. Schritt

echo "" > /var/www/cms/index_2.html && 

==== 2. Schritt ====

  cat tmp0_holidays.DE.csv 
     sed -e 's/\(.*\);\(.*\);\(.*\);\(.*\);\(.*\);\(.*\);\(.*\)/
             \\\2\<\/td\>\\3.\4.\5\<\/td\>\<\/tr\>/' 
     >> /var/www/cms/index_2.html & & 


==== 3. Schritt ====

 echo "
" >> /var/www/cms/index_2.html

Ergebniss:

Die Schritte zusammen ergeben folgende Ausgabe:

| Name | Datum (Tag.Monat.Jahr) | 
<tr><td>Bereich_1</td><td>Bereich_2</td><td>Bereich_3.Bereich_4.Bereich_5</td></tr>
<tr><td>  \1     </td><td>    \2   </td><td>    \3   .   \4    .    \5   </td></tr>


1. Schritt

echo "" > /var/www/cms/index.html && 

==== 2. Schritt ====


  cat tmp0_holidays.DE.csv 
     sed -e 's/;/\<\/td\>\/g' 
     sed -e 's/^/\\/' 
     sed -e 's/$/\<\/td\>\<\/tr\>/' 
     >> /var/www/cms/index.html && 


  ergibt ---->  DE;Rosenmontag;19;2;2007;0;0 

       
==== 3. Schritt ====

  echo "
DE Rosenmontag 19 2 2007 0 0
" >> /var/www/cms/index.html

Ergibt folgende Tabellenausgabe:

 | DE    | Name | Tag | Monat | Jahr | 0 | 0 |

Vorbereiten der Wahl des Sprechers

Nach einem halben Jahr steht wieder die Wahl eines Sprechers der LUG Kaiserslautern an. Wir wollen über die beim nächsten Treffen stattfindende Wahl sprechen und vorbereiten.
Dauer ca. 30min


Grilltermin

Die LUG Landau und die LUG Kaiserslautern wollen grillen. Hierzu wird noch ein Termin nebst Location gesucht. Dauer variabel (Je nach Zeit)(

Persönliche Werkzeuge