2016-07-23 14 views
0

Ich verfolge die Zeitverschiebungen für meine Maschine und habe gerade festgestellt, dass meine Protokolle nicht das JAHR anzeigen, in dem die Zeile erstellt wurde. Also die Frage ist ganz einfach ...Jahr in ntpdate einfügen Ergebnisse

Wie bekomme ich 2016, oder eher aktuelle Jahr, eingefügt werden? Zum Beispiel ntpdate -v produziert:

23 Jul 12:24:09 ntpdate[10251]: ntpdate [email protected] Fri Oct 23 16:44:06 UTC 2015 (1) 
23 Jul 12:24:09 ntpdate[10251]: no servers can be used, exiting 

ich es möchte produzieren:

23 Jul 2016 12:24:09 ntpdate[10251]: ntpdate [email protected] Fri Oct 23 16:44:06 UTC 2015 (1) 
23 Jul 2016 12:24:09 ntpdate[10251]: no servers can be used, exiting 

Extra-Bonuspunkte, wenn eine Lösung durch ein langes Textdokument zu scannen und nehmen Sie die entsprechenden Ersatzarbeits rückwärts von Strom vorgesehen ist Datum, dh ein Werkzeug, um mein bestehendes [und fehlendes] Log zu beheben.

+0

Die erste Zeile zeigt das Jahr, nicht wahr? – hek2mgl

+0

Sie werden verstehen, dass '2015' das Datum der Erstellung der ausführbaren Datei ist, das durch die Option '-v' aufgerufen wird. – Tfb9

+0

Oh, ich verstehe. Entschuldigung, habe ich verpasst. Ich würde etwas wie 'ntpdate -v 2> & 1 | vorschlagen awk -v Jahr = "$ (Datum +% Y)" '{$ 3 = Jahr "" $ 3} 1'' Allerdings bin ich nicht sicher, wie stabil das sein wird bei 'Dec 31 23: 59: 59'. Deshalb füge ich es nicht als Antwort hinzu. – hek2mgl

Antwort

0

Der ganze Kredit geht an hek2mgl.

So etwas wie dies funktioniert sehr gut:

$ ntpdate -v 2>&1 | awk -v year="$(date +%Y)" '{$3=year" "$3}1' 

Hinweis, dass das Jahr des Anrufs date eingeführt wird, und könnte möglicherweise nicht den Rest des von ntpdate Ende am 31. Dezember angegebenen Zeitpunkt entspricht.

Verwandte Themen