Hacker News new | ask | show | jobs
by JOnAgain 4774 days ago
You probably want

`history -100`

on OS X, anyway, the default only gives 15 or so commands in history

2 comments

On 10.8, I'm getting the full 500 lines of history. Not sure that the behaviour has ever been different.
I believe I have set HISTFILESIZE TO 2000 or something, I still need to compact it, and have commands like ls pruned by HISTIGNORE.

I use the awkscript below to compact it:

# histsort.awk --- compact a shell history file # Thanks to Byron Rakitzis for the general idea

     {
         if (data[$0]++ == 0)
             lines[++count] = $0
     }
     
     END {
         for (i = 1; i <= count; i++)
             print lines[i]
     }
Huh, I didn't know that. What command gives the entire history on OS X, then?
history shows the full .bash_history, but by default HISTFILESIZE is 500 so it only stores 500 entries.
I ran this in Mac OS without a hitch, gave 100. I use zsh, maybe the default shell doesn't?