Senden Sie allen Benutzern Befehle per E-Mail, wenn sich der Benutzer abmeldet

344
Thomas Storm

Gibt es unter Linux eine Möglichkeit, eine E-Mail mit Benutzersitzung (z. B. Befehlen) zu senden, wenn er eine SSH- oder Konsolensitzung beendet?

1
Was ist eine Sitzung? Wenn sie sich über SSH oder über die Konsole anmelden oder stattdessen nur eine grafische Umgebung? thrig vor 7 Jahren 0
nur ssh und konsole Thomas Storm vor 7 Jahren 0

1 Antwort auf die Frage

2
Dfaure

Vorausgesetzt, Sie sprechen von der Ausführung einer Bash-Shell im interaktiven Modus. Wenn Sie sich auf Bash-Startdateien beziehen, sollten Sie einige Befehle über die ~/.bash_logoutDatei auslösen können .

In Ihrem Fall würden Sie beispielsweise den Shell-Verlauf an einen Mail-Befehl weiterleiten, beispielsweise:

history | mail -s "history" foo@bar.com 
Vielen Dank! Es macht den Trick, sendet aber eine Gesamtgeschichte. Ich habe versucht, "history -c" in das ~ / .bash_profile zu schreiben, aber es hilft nicht - die Historie ist die gleiche. Haben Sie eine Ahnung, wie ich Protokolle nur von exakten Sitzungen protokollieren kann? Thomas Storm vor 7 Jahren 0
für eine Verwendung ** last **, um herauszufinden, welcher Zeitrahmen verwendet werden soll - was schwierig sein kann, wenn gleichzeitig mit mehreren tty-Dateien gearbeitet wird - und dann ** HISTTIMEFORMAT = "% d /% m /% y% T" ** ** Zeitstempel auf die Ausgabe von ** history ** setzen. flowtron vor 7 Jahren 0
[hier] (http://unix.stackexchange.com/questions/171341/bash-history-for-current-session) habe ich gefunden Thomas Storm vor 7 Jahren 0
aber es funktioniert immer noch nicht in .bash_profile Thomas Storm vor 7 Jahren 0
Ich habe herausgefunden, dass das Ausführen von "rm -f ~ / .bash_history; berühren Sie ~ / .bash_history" in bash_profile und das Ausführen von "history -a", bevor Ihr Befehl in bash_logout genau das tut, was ich brauchte. Thomas Storm vor 7 Jahren 0