Command history seems to be missing the first 75 lines
Command history seems to be missing the first 75 lines
A couple of years ago, I did the automatic distribution update from 14.04 to 16.04. For the first time in my life, I was able to continue to use the computer after the automatic distribution update. As usual, the software repositories are all muntered, so system updates don't work properly, but I've gotten by.
I am going to do a clean installation of 18.04, however. In order to be able to configure my system more easily after the installation, I exported my command history to a text file.
$ history > /.../20180915_Command_history.txt
Beautifully, the resulting text file contains line numbers. Somewhat mysteriously, the first line number is 76. After looking at the first few lines, it looks like there were probably some previous commands.
!-75 is a good command to pull requests
– hello moto
Sep 28 '18 at 5:11
1 Answer
1
First of all, If you need to get a backup of your command line history, then just copy this file:
~/.bash_history
Remember that you have to close all your terminals or run history -a
to append all commands from those history sessions to the history file.
history -a
If not, is there any way that I can see lines 1 to 75?
Every command that has been saved in your history is available at ~/.bash_history
file, to see all of them open a terminal and run:
~/.bash_history
cat ~/.bash_history
To get an output similar to history
command with numbering run:
history
cat -n ~/.bash_history
Do the line numbers just start at 76 for some reason?
Run this command:
grep "^HIST" .bashrc
You have to get an output similar to:
HISTSIZE=1000
HISTFILESIZE=2000
As I said before ~/.bash_history
keeps command-line's history.
~/.bash_history
The HISTFILESIZE
show how many command should ~/.bash_history
keeps track of, for mine it's 2000.
HISTFILESIZE
~/.bash_history
And HISTSIZE
is the number of commands that history
command (shell built-in actually) keeps track of.
HISTSIZE
history
When you open a terminal and run history
, it will picks the last HISTSIZE
number of commands from ~/.bash_history
and shows that to you.
history
HISTSIZE
~/.bash_history
If you run new commands it will remove the older ones from session and append the new ones at the end of its list so the number of commands will match HISTSIZE
.
HISTSIZE
I guess while asking the question you had 74 command more than of HISTSIZE
in your .bash_history
and that's the reason why it starts at 75.
HISTSIZE
.bash_history
From man bash
:
man bash
HISTSIZE
HISTSIZE
The number of commands to remember in the command history.
HISTFILESIZE
HISTFILESIZE
The maximum number of lines contained in the history file.
I'll suggest my per-process
bash
history, see my answer at askubuntu.com/a/80882/25618– waltinator
Sep 17 '18 at 4:24
bash
What's the rationale for keeping
HISTSIZE < HISTFILESIZE
? Is there some downside of having history
lookup all available commands? Does it become slow? But then does 1000 vs 2000
really make a difference? I could understand if you had 100k
vs 1000
maybe but I really don't see how that specific setting would achieve anything useful.– Giacomo Alzetta
Sep 17 '18 at 7:11
HISTSIZE < HISTFILESIZE
history
1000 vs 2000
100k
1000
@GiacomoAlzetta I don't think that the number is related to being able to perform the task faster, in my opinion it's for more convenience, I can look into 1000 line of history easier that of 2000. it's like caching data, we keep the most recent one because there is a higher chance that we run them again.
– Ravexina
Sep 17 '18 at 8:06
@Ravexina Yes, but using
Ctrl+R
will show the most recent commands first, so I don't really see any inconvenience in keeping more. You can always do history | tail -n 1000
to keep just the last 1000 lines so it seems like an unnecessary limitation.– Giacomo Alzetta
Sep 17 '18 at 8:10
Ctrl+R
history | tail -n 1000
@GiacomoAlzetta I think it's about being able to have a look into most recent commands really fast not searching about specific result (like using ctrl+r), it's really a pain in the neck to combine
history
with other commands, I prefer running history
to get my desired output and when I need more then I can just run tail -2000 ~.bash_history
. It's all about what you prefer if 1000 is not enough for you just increase it... But not to 100K
as you said your self :)– Ravexina
Sep 17 '18 at 8:16
history
history
tail -2000 ~.bash_history
100K
Thanks for contributing an answer to Ask Ubuntu!
But avoid …
To learn more, see our tips on writing great answers.
Required, but never shown
Required, but never shown
By clicking "Post Your Answer", you agree to our terms of service, privacy policy and cookie policy
Mine starts from 994 and ends with 1993.
– mikewhatever
Sep 17 '18 at 3:53