19

I just followed the top-voted answer here and successfully installed Visual Studio Code's code command in my terminal.

However, the code command fails to launch Visual Studio Code every time after I restart my MacBook Pro.

~ code
zsh: command not found: code

Is it possible to install code permanently so that I don't have to install it every time I turn on my MacBook Pro?

~ where code
/usr/local/bin/code

~ ls -l /usr/local/bin/code
lrwxr-xr-x  1 myName  admin  167 Aug  5 13:41 /usr/local/bin/code -> /private/var/folders/bh/525lnbns1213cx2651s97my00000gp/T/AppTranslocation/EA379FC4-05D2-4739-BE49-1D8870E47B8A/d/Visual Studio Code.app/Contents/Resources/app/bin/code

I also find out that the folder EA379FC4-05D2-4739-BE49-1D8870E47B8A get deleted after I restart my laptop.

This is the reason that I cannot run code after the laptop is restarted.

Why is code installed in a temporary folder?

My MacBook Pro's version is macOS Sierra version 10.12.6

1

6 Answers 6

35

Looks like your whole Visual Studio got installed in a temporary folder.

  • Remove the current link with sudo rm /usr/local/bin/code

  • Start Visual Studio from within /Applications

  • Reinstall code as described in https://stackoverflow.com/a/29971430:

    Now open the Command Palette (F1 or ⇧⌘P on Mac) and type shell command to find the Shell Command: Install 'code' command in PATH command.

If it still doesn't work you can also link manually by running

sudo ln -fs "/Applications/Visual Studio Code.app/Contents/Resources/app/bin/code" /usr/local/bin/
4
  • 1
    Thank you. The solution works. I found that my Visual Studio Code.app was in Downloads folder. The code command is installed in /Applications/Visual Studio Code.app/Contents/Resources/app/bin/code after I dragged it to Applications folder.
    – Brian
    Aug 5, 2017 at 6:43
  • 1
    Moving VSCode from /Downloads to /Applications and re-running the VSCode pallette command did the trick for me too.
    – Lauren
    Aug 8, 2018 at 21:54
  • The manual link worked for me, thank you! Apr 18, 2021 at 17:27
  • running SHELL Command: Uninstall 'code' command in PATH then running Shell Command: Install 'code' command in PATH fixed this issue for me
    – Xaxxus
    Jul 27, 2021 at 15:22
6

If you're on Mac OS Catalina, you need to edit your .zprofile instead of .bash_profile.

  1. Edit your ~/.zprofile file: vim ~/.zprofile
  2. Add the following code in it, on it's own line: code () { VSCODE_CWD="$PWD" open -n -b "com.microsoft.VSCode" --args $* ;}
  3. Save the file: :wq
  4. Re-run the updated file: source ~/.zprofile.
  5. Test that running code . opens your current folder in VS Code!
4

OK, it seems "ln" command not work for me (I use this command set up sublime text). But I got an another solution.

  1. edit your ~/.bash_profile file.

  2. add the following code in it. code () { VSCODE_CWD="$PWD" open -n -b "com.microsoft.VSCode" --args $* ;}

  3. after save. do not forget to run source ~/.bash_profile.

  4. Finished and test it, type code

1
  • For zsh, we probably want to edit .zshrc instead of .bash_profile, though. That way, we don't need to source ~/.bash_profile each time we need the settings... Dec 1, 2019 at 14:07
3

GOOD TO KNOW:
Since Catalina update, MacOS uses zsh bash environment by default*
*Resource about zsh and terminal

ALTERNATIVE APPROACH:
Personnal settup: currently using macOS with Catalina:

  • bash file & location: .zshrc, ~/.zshrc
  • .zshrc existance: ls -la > and look for .zshrc file

    • if no .zshrc file: touch .zshrc
  • open & write –– alias code="open -a 'Visual Studio Code'".
    Which will behave like what Monomeeth mentioned above:
    opens your VSCode from your folder Applications.

1

One thing I noticed was that my Visual Studio Code.app was in Downloads/, not Applications/.

If this is the case, run mv /Users/<your-user-name>/Downloads/Visual\ Studio\ Code.app /Applications and try again!

Good luck!

0

simple solution if you recently reinstalled VS Code and don't want to sudo: Just drag & drop Visual Studio Code.app from Downloads to Applications.

then run .code in whatever terminal you use on mac

You must log in to answer this question.

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