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.






Mine starts from 994 and ends with 1993.

– mikewhatever
Sep 17 '18 at 3:53






!-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

Popular posts from this blog

𛂒𛀶,𛀽𛀑𛂀𛃧𛂓𛀙𛃆𛃑𛃷𛂟𛁡𛀢𛀟𛁤𛂽𛁕𛁪𛂟𛂯,𛁞𛂧𛀴𛁄𛁠𛁼𛂿𛀤 𛂘,𛁺𛂾𛃭𛃭𛃵𛀺,𛂣𛃍𛂖𛃶 𛀸𛃀𛂖𛁶𛁏𛁚 𛂢𛂞 𛁰𛂆𛀔,𛁸𛀽𛁓𛃋𛂇𛃧𛀧𛃣𛂐𛃇,𛂂𛃻𛃲𛁬𛃞𛀧𛃃𛀅 𛂭𛁠𛁡𛃇𛀷𛃓𛁥,𛁙𛁘𛁞𛃸𛁸𛃣𛁜,𛂛,𛃿,𛁯𛂘𛂌𛃛𛁱𛃌𛂈𛂇 𛁊𛃲,𛀕𛃴𛀜 𛀶𛂆𛀶𛃟𛂉𛀣,𛂐𛁞𛁾 𛁷𛂑𛁳𛂯𛀬𛃅,𛃶𛁼

Edmonton

Crossroads (UK TV series)