ZSH only displaying last 16 or so commands with history. HISTSIZE & SAVEHIST are 500
In ZSH when I type history
I'm only displayed the last 16 or so commands. I would like history
to display all the existing commands in the history file.
When I look in my .zsh_history (my history file) I see all the 500 previous commands that should be there.
I looked in the man page, but I don't see anything that controls how many of the history items are listed. I also looked in my, env
but don't see anything that could be controlling this.
Any help would be appreciated! thanks.
history 1
(or history 1 -1
) will display all entries from 1 (first entry) to -1 (last entry). You can also use history 1 100
to display the first 100 entries or history -100 -1
to display the last 100 etc.
For more information see the section on fc
in man zshbuiltins
. (history
is equivalent to fc -l
).
The accepted answer is simply correct, but I would like to quote some official documentation about this, in case it helps someone. (And this is too long for comment.) First look at history
:
Same as
fc -l
.
Simple enough. Now look at fc
:
fc -l [ -LI ] [ -nrdfEiD ] [ -t <timefmt> ] [ -m <match> ]
[ <old>=<new> ... ] [ <first> [ <last> ] ]
The first two forms of this command select a range of events from
first
tolast
from the history list. The argumentsfirst
andlast
may be specified as a number or as a string. A negative number is used as an offset to the current history event number. A string specifies the most recent event beginning with the given string.
So history 1
means fc -l 1
, which means starting from the first entry. Similarly if you want “last n” history (history n
in Bash) you need history -n
. As for default value:
If
first
is not specified, it will be set to -1 (the most recent event), or to -16 if the-l
flag is given.