Können Sie das Zeitstempelformat für den Verlaufsbefehl auf tcsh ändern?

7

Wenn ich den historyBefehl (auf tcsh) ausführe , wird nur der TIME-Teil des Zeitstempels gedruckt und das Datum weggelassen:

 3  15:07   echo $PATH
 4  15:07   ls -la

In bash können Sie HISTTIMEFORMATUmgebungsvariablen verwenden, um den durch historyBefehl gedruckten Zeitstempel forman zu beeinflussen .

Z.B set HISTTIMEFORMAT="[%F %T %Z] "

Gibt es eine Möglichkeit, dies in tcsh zu tun, und wenn ja, welche Version von tcsh ist erforderlich? Wir haben tcsh 6.17.00.

Umgebung: Red Har Linux 4.4, aber ich gehe davon aus, dass die Antwort nicht beeinflusst werden sollte, da historyes sich um eine integrierte Shell handelt und nicht um eine vom Betriebssystem bereitgestellte Binärdatei.

DVK
quelle

Antworten:

10

Von der tcshManpage.

Auszug

Verlauf Das erste Wort gibt die Anzahl der zu speichernden Verlaufsereignisse an. Das optionale zweite Wort (+) gibt das Format an, in dem der Verlauf gedruckt wird. wenn nicht angegeben, %h\t%T\t%R\nwird verwendet. Die Formatsequenzen werden unten unter Eingabeaufforderung beschrieben. Beachten Sie die variable Bedeutung von %R. Auf 100die Standardeinstellung.

Beispiel

$ set history= ( 1000 "%h %W/%D/%Y %T %R\n" )

Ergebnisse in:

$ history
     2 09/08/2014 22:48 set history= ( 1000 "%h %W/%D/%Y %T %R\n" )
     7 09/08/2014 22:49 ls
     9 09/08/2014 22:49 echo "hi"
    10 09/08/2014 22:49 history

Dies würde dazu führen, dass der Verlauf für die letzten 1000 Befehle mit dem Format von beibehalten wird "%h %W/%D/%Y %T %R\n".

  • %h - Geschichte #
  • %W/%D/%Y - Monat Tag Jahr
  • % T - 24 h. Zeit
  • %R - Befehl ausführen

Die vollständigen Beschreibungen dieser Makros finden Sie in der tcshManpage. Scrollen Sie nach unten zu dem Abschnitt, in dem der promptBefehl erläutert wird. Sie sind dort.

slm
quelle
Sie haben den Monat und den Tag umgekehrt. Sie meinten wirklich "% W /% D /% Y" für dieses Format: 25.12.2014. :-)
Kevin_Kinsey
Und danke für die Antwort ... Ich habe mich wirklich gefragt, wann ich das letzte Mal das eine oder andere Kommando ausgeführt habe :-) Im Ernst. :-)
Kevin_Kinsey