Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I just write all my commands to a log. It's saved me a number of times.

https://spin.atomicobject.com/2016/05/28/log-bash-history/



You can do this easily with zsh’s standard features. I love having years of my command history! It's all combined across sessions and instantly searchable with the standard ^R.

These are most of the settings in ZSH I use to enable all that.

  HISTSIZE=10000000
  SAVEHIST=10000000
 
  setopt EXTENDED_HISTORY # logs the start and elapsed time
  setopt INC_APPEND_HISTORY   
  setopt SHARE_HISTORY
  setopt HIST_IGNORE_DUPS     
  setopt HIST_IGNORE_ALL_DUPS
  setopt HIST_FIND_NO_DUPS
Apple now even recommends zsh shell over bash! =) https://support.apple.com/en-us/HT208050 (it's the 10.15 default)


> Apple now even recommends zsh shell over bash!

Worth reading why they did that: https://thenextweb.com/dd/2019/06/04/why-does-macos-catalina...


Thank you, this was so timely. My zsh terminals have been saving my command history but, for reasons I didn't know, were not displaying them. I'm much pleased to have that sorted out.


yes, `EXTENDED_HISTORY` is all you need... And BTW I think HIST_IGNORE_DUPS` is not needed if you set `HIST_IGNORE_ALL_DUPS`


Yes, it's useful. It's even better if you can search your commands with out of order matching (multiple words in any order).

I do this from Emacs (you can use Helm or Ivy, for example) and it's extremely convenient and effective to quickly get old commands back.


Xonsh lets you log history to a sqlite database. It’s a nifty feature for analysing what you’re doing in your shell and AFAIK it keeps the start/stop/elapsed time too.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: