How to Clear Terminal History on Mac

Nicholas Russell
By Nicholas Russell 14 Min Read
14 Min Read

Hey there! If you’ve ever used the Terminal on your Mac, you know it’s like a magic translator, turning the words you type into a language your computer can understand. It’s pretty awesome, right?

One of the best things about the Terminal, which uses a shell environment (think of it as the brain behind the scenes), is that it remembers the commands you’ve used before. This “memory” is super handy for people like me who use the Terminal a lot. But sometimes, just like cleaning up your room, you need to clear out this command history.

Why would you want to clear your history? Maybe for privacy, maybe to start fresh, or just because it feels good to tidy up. Whatever your reason, I’m going to show you some simple ways to do it. We’ll use the history command, delete the history files, or even set the history size to zero.

Stick around, and I’ll also chat about why you might want to clear your history and how to adjust the size of your history to fit your needs. Let’s get started! πŸš€πŸ–₯️

Clear Command History

Alright, let’s talk about how to clean up your command history in the Terminal. First, it’s important to know that when we say “clearing the command history,” we’re not talking about the stuff you see on your Terminal screen. We’re focusing on the list of commands you’ve typed in the past.

Curious about what your Mac remembers? Just type history in the Terminal and press Enter. You’ll see a list of commands you’ve used before. It’s like a diary of your Terminal adventures!

The cool thing about command history is it’s like a shortcut. If you need to repeat a command, just press the up arrow key to go back through your history, or the down arrow key to go forward. It’s a time-saver for sure. When you find the command you want, press Enter, and boom, it runs again. No need to type it all over again. You can even tweak the command if you need to, using the backspace or arrow keys.

Clear Using the History Command

Now, why and how do we clear this history? Well, for the Z shell (that’s the brain behind your Mac Terminal), there are three main ways to do it. Let’s check them out.

The fastest way I’ve found is using the history command with a special trick. Here’s how you do it:

Type history -p and hit Enter.

(Note: If you’re using bash or other shells, it’s history -c instead.)

Clear By Deleting the History Directory

If you’re feeling a bit more techy and want to dive deeper, here’s another way to clear your command history: by getting rid of the directory where this history is stored. For Z shell users (which is most Macs these days), the directory is named .zsh_sessions.

This directory is a bit sneaky – it’s hidden. To see it, you’ll need to use a special command that shows hidden stuff. Don’t worry, I’ll guide you through it!

Step 1: Head to Your Home Directory

First off, let’s go to your home directory. Just type cd and press Enter.

Step 2: Finding the Secret History

Now, we’re looking for a directory called .zsh_sessions. To see if it’s there, type ls -a (this command is like asking your Mac to show all the hidden treasures) and press Enter.

Step 3: Rename or Remove the History

I recommend renaming the folder instead of deleting it. That way, it’s like keeping a backup. But if you want to, you can totally delete it. No harm will come to your Mac. To rename, type mv .zsh_sessions .zsh_sessions.old and hit Enter.

Step 4: Say Goodbye to Your Terminal Session

Now, type exit and press Enter. You might see some messages saying the folder is missing. Don’t sweat it – this is totally normal.

Step 5 & 6: Close and Reopen Terminal

Close your Terminal app and then open it again however you like.

Step 7: Check Your Handiwork

Finally, type history and press Enter. Ta-da! Your history should now be sparkly clean, showing only the command you just used.

And there you have it! A fresh start for your Terminal’s memory.

Set History Size to 0

Okay, ready for the third method? This one is pretty slick. You can actually tell your Terminal to forget everything by setting the history size to zero. This means the Terminal will think, “Oh, I don’t need to remember any commands!” Except for the last one you use to check your history.

Step 1: Check Your Current History Size

First, let’s find out how big your history is right now. Type echo $HISTSIZE and press Enter. It’ll show you a number – that’s how many commands your Terminal remembers. In my case, it’s 2000.

Step 2: Tell Your History to Take a Break

Now, let’s set that number to zero. Type export HISTSIZE=0 and hit Enter. This is like telling your Terminal, “Hey, let’s not remember anything for now.”

Step 3: Bring Back the Memory, But Clean

Finally, set the size back to what it was before. If yours was 2000 like mine, type export HISTSIZE=2000 and press Enter.

Check Your Work

Now, when you type history, you’ll see that it’s pretty much empty, showing only the last command you used to set the history size.

And that’s it! You’ve just given your Terminal a fresh start in a really cool way. It’s like magic, but you’re the magician!

Why Clear Terminal History

You might be thinking, “If the Terminal’s command history is so helpful, why would I ever want to clear it?” That’s a great question! Even though having a record of your past commands is super useful, there are times when wiping this slate clean makes sense.

Trying New Things

Imagine you’re experimenting with a new process or a set of commands. You might want to start with a clean history. This way, you can easily track exactly what you did for this specific task without getting mixed up with older commands. It’s like having a clean notebook for a new project!

Keeping Things Private

Privacy and security are big deals, especially in the tech world. There might be situations where you don’t want anyone else who uses your computer to see what commands you’ve run. Maybe you worked on something confidential, or perhaps you just prefer keeping your activities private. Clearing your history helps keep your command usage just between you and your Mac.

So, while that command history is a fantastic tool for everyday use, sometimes hitting the reset button is the best move, whether it’s for clarity, security, or just starting fresh on a new project. πŸ›‘οΈ

Adjust the History Size

Now, let’s talk about customizing your Terminal’s memory. Remember how we set the history size to zero earlier? Well, you can actually set this size to whatever suits your needs. Maybe you don’t want to forget everything, but you don’t need to remember every single command either.

Checking Your Current History Size

First, find out how big your Terminal’s memory is right now. Just type echo $HISTSIZE and hit Enter. It’ll tell you how many commands it’s currently holding on to.

Setting the Perfect Size

Decided you need more or less space? Changing it is super easy. Let’s say you want to set your history size to 3 commands (or any other number you choose). Just type export HISTSIZE=3 and press Enter. Now, your Terminal will remember only the last three commands you’ve used.

Why Adjust the Size?

You might be wondering, “Why bother changing the history size?” Well, maybe you’re someone who likes to keep things minimal and don’t need a long list of commands. Or, you might be working on something big and need a bigger history to keep track of all your steps. Whatever your reason, adjusting the history size gives you control over how much your Terminal remembers. It’s like setting up your own digital memory lane!

So, whether you want a short and sweet history or a long and detailed one, you’ve got the power to set it just the way you like. Your Terminal, your rules! πŸŒŸπŸ‘©β€πŸ’»πŸ› οΈ


Alright, we’ve journeyed through the fascinating world of the Mac Terminal and its command history. Let’s wrap it up!

Recap of What We’ve Learned

  1. Clearing the Command History: We explored three cool ways to clear your Terminal’s history, from the straightforward history -p command to the more adventurous method of deleting or renaming the .zsh_sessions directory. And let’s not forget the sleek trick of setting the history size to zero!
  2. Why Clear History: We discussed why you might want to clear your history, whether it’s for trying out new processes without clutter, for privacy reasons, or just to get a fresh start.
  3. Adjusting History Size: Lastly, we saw how you can play with the history size. You can shrink it down for a simpler view or expand it to hold more commands, depending on your needs.

Whether you’re a seasoned coder or just starting out, understanding how to manage your command history can make your Terminal experience smoother and more secure. It’s all about having the right tools at your fingertips and knowing when and how to use them.

Remember, your Terminal is a powerful tool, and with these tips, you’re well-equipped to keep it organized, efficient, and tailored to your workflow.

So go ahead, experiment with these commands, and see how they can enhance your Mac experience. Happy computing, and may your Terminal adventures be ever rewarding! πŸš€πŸ’»


What is the Mac Terminal and why is its command history important?

The Mac Terminal is a command line interface that lets you interact directly with your Mac’s operating system using text-based commands. Its command history is important because it keeps a record of your past commands, making it easier to repeat or reference previous tasks.

How can I view my current command history in the Mac Terminal?

To view your current command history, open Terminal and type history, then press Enter. This will display a list of commands you have previously entered.

What are some reasons for clearing the Terminal’s command history?

Reasons for clearing the Terminal’s command history include maintaining privacy, removing clutter from previous command trials, or starting fresh for a new set of tasks or projects.

How do I clear my command history using the history command?

To clear your command history using the history command, type history -p and press Enter. For bash and other shells, use history -c.

Can I adjust the size of the Terminal’s command history? How?

Yes, you can adjust the size of the Terminal’s command history. Check the current size with echo $HISTSIZE, and then set a new size with export HISTSIZE=[desired number]. For example, export HISTSIZE=3 will limit the history to the last three commands.

What is the difference between clearing the command history and deleting the .zsh_sessions directory?

Clearing the command history using the history command is a quick way to erase the record of past commands. Deleting the .zsh_sessions directory, or renaming it, is a more comprehensive method that involves removing the actual file where the history is stored. This method is more technical and provides a clean slate for the Terminal’s session history.

Share This Article
Leave a comment

Leave a Reply

Your email address will not be published. Required fields are marked *