1
0
mirror of https://github.com/jbranchaud/til synced 2026-01-02 22:58:01 +00:00
Files
til/unix/exclude-a-command-from-the-zsh-history-file.md

1.1 KiB

Exclude A Command From The ZSH History File

The zsh shell can be configured to record the commands you run from the terminal in a history file. This is great for recalling and retrieving past commands that you want to run again.

What about commands that I don't want written to a file on my machine? For instance, if I'm running a command that includes a password, secret key, or some other sensitive value, I don't want that saved in plaintext on my machine.

zsh has an affordance for this with the hist_ignore_space option. With that option enabled, any command preceded by a space (' ') will be excluded from the history file.

First, turn it on.

$ setopt hist_ignore_space

Now, try a couple commands and see what shows up in the file.

$ echo 'this command will be saved in history'
this command will be saved in history

$  echo 'this will be kept secret'
this will be kept secret

$ tail ~/.zsh_history
: 1654378676:0;echo 'this command will be saved in history'
: 1654378690:0;tail ~/.zsh_history

Notice how the second command with the prefixed space is excluded.

source