After upgrading to Catalina and encountering the zsh upgrade reminder when launching Terminal, I've decided to switch to zsh.

The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.
For more details, please visit https://support.apple.com/kb/HT208050.

However, I'm having trouble getting Terminal/zsh to recognize the .zshrc startup file located in my home folder. ~/zshrc isn't loaded on launch, and executing source ~/.zshrc returns source: no such file or directory.

The file only contains one line, an alias tying python to python3.

Finder showing .zshrc presence next to an open TextEdit window of the file Terminal showing the lack of any aliases and the failed source command

  • 1
    Please run ls -ltra to check whether the file exists in your home directory, see example below: ``` ls -ltra ~/.zshrc -rw-r--r-- 1 user staff 475 Jul 30 22:52 .zshrc ``` Thanks.
    – LandiLeite
    Jul 31, 2020 at 1:58
  • 1
    If the source command says that the file does not exist, the file really does not exist. Jun 3, 2022 at 10:02

4 Answers 4


The issue turned out to be that .zshrc had a hidden .txt file extension. Somehow it was automatically named .zshrc.txt, probably when I used TextEdit to edit it, and source doesn't infer the text extension. Finder also doesn't display the .txt extension by default unless you inspect the file, so I hadn't noticed the issue.

enter image description here

  • 1
    Well, if the file has a different name, of course zsh does not find it. The problem seems more to be related to your text editor, which adds a .txt without your permission, and a weird setting of your Finder, which hides extensions. This is something I would solve once and for all, otherwise it will bite you again someday. Jun 3, 2022 at 10:04

Somewhat similarly, my terminal/zsh wasn't recognizing my .zshrc file also, so running source ~/.zshrc helped me find that my zshrc file was formatted improperly (it contained spaces before/after an equals symbol in alias g="git").


I had a similar problem to @chinookf. My .zshenv had a typo in the declaration of a function, which was causing both .zshenv and .zshrc to not load properly. As simple as removing a space in the function declaration and everything went back to normal.


In my case, the thing was hidden in the line To update your account to use zsh, please run chsh -s /bin/zsh.

As I understood, the problem is in fact, that for any reason zsh was not a default shell interpreter in the system after a fresh update to macOS Sonoma. After execution of chsh -s /bin/zsh - the issue with "ignored" .zshrc disappeared.

  • Updates don't change user shells, only newly created accounts get zsh by default.
    – nohillside
    Nov 28, 2023 at 13:46

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .