How to view datetime stamp for history command in Zsh shell
I believe the HISTTIMEFORMAT is for Bash shells. If you're using zsh
then you could use these switches to the history
command:
Examples
$ history -E
1 2.12.2013 14:19 history -E
$ history -i
1 2013-12-02 14:19 history -E
$ history -D
1 0:00 history -E
2 0:00 history -i
If you do a man zshoptions
or man zshbuiltins
you can find out more information about these switches as well as other info related to history
.
excerpt from zshbuiltins man page
Also when listing,
-d prints timestamps for each command
-f prints full time-date stamps in the US `MM/DD/YY hh:mm' format
-E prints full time-date stamps in the European `dd.mm.yyyy hh:mm' format
-i prints full time-date stamps in ISO8601 `yyyy-mm-dd hh:mm' format
-t fmt prints time and date stamps in the given format; fmt is formatted
with the strftime function with the zsh extensions described for
the %D{string} prompt format in the section EXPANSION OF PROMPT
SEQUENCES in zshmisc(1). The resulting formatted string must be no
more than 256 characters or will not be printed.
-D prints elapsed times; may be combined with one of the options above.
Debugging invocation
You can use the following 2 methods to debug zsh
when you invoke it.
Method #1
$ zsh -xv
Method #2
$ zsh
$ setopt XTRACE VERBOSE
In either case you should see something like this when it starts up:
$ zsh -xv
#
# /etc/zshenv is sourced on all invocations of the
# shell, unless the -f option is set. It should
# contain commands to set the command search path,
# plus other important environment variables.
# .zshenv should not contain commands that produce
# output or assume the shell is attached to a tty.
#
#
# /etc/zshrc is sourced in interactive shells. It
# should contain commands to set up aliases, functions,
# options, key bindings, etc.
#
## shell functions
...
...
unset -f pathmunge _src_etc_profile_d
+/etc/zshrc:49> unset -f pathmunge _src_etc_profile_d
# Created by newuser for 4.3.10
history -E
or history -i
or whatever DO NOT work for me.
zsh --version
shows that zsh 4.3.6 (x86_64-suse-linux-gnu)
.
Then fc -li 100
works! It shows the recent 100 commands with timestamp :)
If you are using oh-my-zsh
addon in zsh
, history -E
or history -i
wont work (because it's aliased to fc -l 1
).
As @juanpastas pointed out, try
\history -E
or
\history -i
or
fc -li 100