CP hat eine interessante Funktion eingebaut
In meinem Aktualisierungsscript habe ich eine interessante Änderung eingebaut.
Der cp steht für kopieren von Dateien. Es gibt verschiedene Schalter.
-v = Verbose erzähl mir alles, was ich so mache.
-u ist aber ein sehr gute Möglichkeit.
In den Manualseiten von cp (man ruft diese mit
man cp
in der Kommandozeile auf) steht unter
-u geschrieben:
Nur kopieren, wenn die QUELL‐Datei neuer ist als die Zieldatei oder die
Zieldatei nicht existiert.
Das heißt meine Logdateien werden nur überschrieben, wenn sie neuer sind als die Dateien, die in Dokumente liegen. Ich möchte hier im privaten Betrieb nur die aktuellen Dateien haben.
Die Logdateien von der MySQL- und MongoDB werden hier kopiert.
Dann der letzte Befehl, listet alle meine letzten Betriebszeiten vom Rechner auf. Mich interessieren hier nur die aktuellsten Zeiten, also die 12 aktuelle Einträge. Da ich am Anfang der Ausgabe wandern muss, gibt es den Befehl
head
mit dem Befehl
head -n 12
werden die 12 aktuellen Zeilen der Ausgabe angezeigt.
Schließlich wandele ich das in ein Textdatei um, die diesen bestimmten Ordner abgelegt wird. Die Datei wird immer wieder überschrieben. Würde ich wollen, dass die Informationen jedesmal in der Datei drangehängt werden sollten, müsste ich statt > die Folge >> nehmen.
Das Script läuft mit Root-Rechten, weil es ein nur ein winziger Ausschnitt von anderen Befehlen ist, weil ich auch hierüber den Rechner mit frischen Updates versorge.
Ich möchte die Dateien als Normal-User benutzen. Also muss ich mit dem Befehl chmod diese mit Normaluserrechten ausstatten.
Die knallharte Methode ist
chmod ugo+rw Dateiname
in meinem Falle alles was in dem Ordner /home/sven/Dokumente/ drin ist.