Shell Scripting: Fish Shell, how to avoid recording commands to history

Join the AI Workshop to learn more about AI and how it can be applied to web development. Next cohort February 1st, 2026

The AI-first Web Development BOOTCAMP cohort starts February 24th, 2026. 10 weeks of intensive training and hands-on projects.


Sometimes you want to run some commands in the shell, but you don’t want them to be stored in the shell history.

With Fish Shell, my default shell, it’s quite easy. You just have to start a new shell with:

fish --private

then you exit the shell.

I wrote an article on the Fish Shell basics if you’re interested in trying it. I highly recommend Fish over any other shell, due to its ease and “it just works” philosophy.

Lessons in this unit:

0: Introduction
1: Introduction to Shells
2: Bash Basics
3: Writing Shell Scripts
4: Variables and Environment Variables
5: Loops and Arrays
6: Shell Script Functions
7: Creating Aliases
8: Tips and Tricks
9: The Fish Shell
10: Persist aliases and other configuration in Fish Shell
11: How to add a path to Fish Shell
12: ▶︎ Fish Shell, how to avoid recording commands to history
13: Fish Shell, how to remove the welcome message
14: How to replace all filenames with space with underscore using a shell script
15: How to update all npm packages in multiple projects that sit in subfolders