Erstellen v. Log Script – Linux Tutorium Part4

Comments: No Comments
This page has hierarchy - Parent page: Linux Tutorium

Erstellen eines kleinen Log Scriptes – Linux Tutorium Part4

Ein kleines Script in Linux erstellen

nachdem die Grundsätzliche Vorgehensweise jetzt klar ist, will ich euch mal wieder nen Schritt weiter bringen. Hier wollen wir ein weiterhin sehr einfaches Script schreiben welches in eine Datei schreibt.
Oftmals wird in der Programmierwelt eine Sicherungskopie gemacht, jene braucht natürlich Zeitpunkt und Benutzer. Aber auch bei anderen Fällen will man gerne mal nachvollziehen wer was gemacht hat und vor allem wann.
Dazu werden Log Files benutzt.ein shell script das in eine datei schreibt

Weiterhin will ich hier kurz noch sagen, alle Scripte könnt ihr natürlich mit “cat >name.sh” im Terminal schreiben, einfacher wird es aber jetzt eine Datei anzulegen und dann im Texteditor den Code einzufügen. Der Grund liegt auf der Hand, man kann Änderungen viel einfacher durchführen.
Aber zurück zum Log Script. Was brauchen wir also? Ein Script und eine Datei in welche die Ergebnisse angelegt werden. Da der Befehl “cat >>name.txt” ja entweder Anhängt oder, falls die Datei nicht existiert diese auch erstellt, brauchen wir uns um die zweite Datei nicht kümmern. Die andere erstellen wir auf einem der bekannten Wege. Achtet auf die Endung .sh. Danach fügen wir folgende Zeilen ein:

#!/bin/sh
cat >>log.txt <>log.txt
who >>log.txt

Denk dran bevor ihr das Script ausführt müsst ihr natürlich wieder Rechte vergeben “chmod +x script.txt”.
Neu an dem ganzen ist jetzt der “< Die nächste Zeile erstellt nur eine Zeile mit dem String " Username und Date des Logs: ".
Dann kommt auch schon das FF und sagt der Shell hey hier ist Ende des einlesen.
"date >>log.txt” schreibt das Datum und die Uhrzeit in die log.txt. Genauso macht es who mit dem User.
Jedes mal wenn das Script jetzt ausgeführt (für die Quereinsteiger es geht mit ./script.sh) wird passiert das gleiche. Wenn man mit “cat log.txt” öffnet kann man das Ergebnis sehen.


Weiterführendes:Linux Tutorium Pipelein Beispiel
Aber es geht auch mit einer Zeile Weniger. Wenn man sog. Pipelines verwendet und die Zuweisung in Klammern setzt kann der Befehl für das Schreiben von Date und User auch so aussehen:

(date; who) >>log.txt

Im Bild habe ich “who am i” verwendet was nur mich selbst zurück gibt.
Die Klammern sagen der Shell das er wie in der Mathematik auch, das drinnen zuerst behandeln soll und dann weiter mit dem äußeren Teil vorgehen soll.
Das Zeichen “|” bewirkt das beide zurückgegeben werden. Im Hingergrund passiert hier ganzschön viel. Kurz erklärt erstellt er eine Variable schreibt da rein und gibt am ende den gesamten wert zurück, es wären also mehr Befehle möglich.

Die Ausgabe der File im Linux Tuturium

No Comments - Leave a comment

Leave a comment

Your email address will not be published. Required fields are marked *

*


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Welcome , today is Wednesday, February 22, 2012