{"id":11,"date":"2008-09-17T19:00:00","date_gmt":"2008-09-17T17:00:00","guid":{"rendered":"http:\/\/www.butschek.de\/?p=6"},"modified":"2012-03-11T12:11:32","modified_gmt":"2012-03-11T11:11:32","slug":"bash-history-mit-zeitstempel","status":"publish","type":"post","link":"https:\/\/www.butschek.de\/2008\/09\/17\/bash-history-mit-zeitstempel\/","title":{"rendered":"Bash History mit Zeitstempel"},"content":{"rendered":"

\"\"<\/a>Seit Version 3 hat die Linux-Shell ‚Bash‘ ein nettes Feature: Sie kann in der History nicht nur die eingegebenen Befehle speichern, sondern auch Datum und Uhrzeit dazu.<\/p>\n

F\u00fcr mich als Systems Engineer in einem RZ eine nette Sache. Bei einem Problem kann ich zwar per ‚history‘ sehen, welches Kommando dazu f\u00fchrte und per ‚last‘ finde ich schnell heraus, wer meiner Kollegen wann auf dem Server war, doch helfen beide Informationen meist nichts, wenn ich nicht feststellen kann, WANN das Kommando eingegeben wurde.<\/p>\n

Das funktioniert ganz einfach: Die Umgebungsvariable HISTTIMEFORMAT muss gesetzt sein und zwar mit dem Datumsformat gem\u00e4\u00df strftime(3)<\/a>. Die Manpage verr\u00e4t, dass %F das Datum und %T die Uhrzeit ist. Man muss die Variable nun nur noch im File ~\/.bashrc setzen, schon wird bei jedem Befehl die Zeit gespeichert:<\/p>\n

export HISTTIMEFORMAT='%F %T '<\/code><\/p>\n

Wichtig ist das Leerzeichen zwischen dem %T und dem schlie\u00dfenden Quote. Ohne dieses gibt der Befehl ‚history‘ die Kommandos ohne Trennzeichen direkt hinter dem Datum aus.<\/p>\n

Bedenken sollte man, dass dies weder das Manipulieren noch das L\u00f6schen der History verhindert. Man kann also damit keinen „Schutz“ bieten, sondern es nur unter Kollegen etwas einfacher machen, den richtigen Ansprechpartner schnell zu finden.<\/p>\n","protected":false},"excerpt":{"rendered":"

Seit Version 3 hat die Linux-Shell ‚Bash‘ ein nettes Feature: Sie kann in der History nicht nur die eingegebenen Befehle speichern, sondern auch Datum und Uhrzeit dazu. F\u00fcr mich als Systems Engineer in einem RZ eine nette Sache. Bei einem Problem kann ich zwar per ‚history‘ sehen, welches Kommando dazu f\u00fchrte und per ‚last‘ finde […]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[4,5],"tags":[12,35,45,66],"_links":{"self":[{"href":"https:\/\/www.butschek.de\/wp-json\/wp\/v2\/posts\/11"}],"collection":[{"href":"https:\/\/www.butschek.de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.butschek.de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.butschek.de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.butschek.de\/wp-json\/wp\/v2\/comments?post=11"}],"version-history":[{"count":2,"href":"https:\/\/www.butschek.de\/wp-json\/wp\/v2\/posts\/11\/revisions"}],"predecessor-version":[{"id":662,"href":"https:\/\/www.butschek.de\/wp-json\/wp\/v2\/posts\/11\/revisions\/662"}],"wp:attachment":[{"href":"https:\/\/www.butschek.de\/wp-json\/wp\/v2\/media?parent=11"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.butschek.de\/wp-json\/wp\/v2\/categories?post=11"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.butschek.de\/wp-json\/wp\/v2\/tags?post=11"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}