Run / Open VSCode from Mac Terminal

MacosTerminalVisual Studio-Code

Macos Problem Overview


I'd like to run / open Visual Studio Code from the Mac OSX Terminal by running this command code .. I found instructions here:

https://code.visualstudio.com/Docs/setup

Apparently I need to include this in my .bashrc file, so I did, but to no avail.

code () {
    if [[ $# = 0 ]]
    then
        open -a "Visual Studio Code"
    else
        [[ $1 = /* ]] && F="$1" || F="$PWD/${1#./}"
        open -a "Visual Studio Code" --args "$F"
    fi
}

I edited the .bashrc file here:

~/.bashrc which points to /Users/username/.bashrc

Which .bashrc should I be editing?

Macos Solutions


Solution 1 - Macos

Try this one

Open Visual Studio Code and press Command + Shift + P or F1 then type Shell in command palette now you are able to find this option like Shell Command : Install code in PATH from suggested list in command palette. Select that options.

Open VSCode via Terminal/Command Prompt

That's it.

Now open your terminal type.

$ code .

To make this change persist after restart on MacOS

Many Mac users find this is forgotten and needs to be re-applied after any restart. This may happen if MacOS has applied the quarantine attribute to VS Code, which the OS uses for the "Are you sure?" notice applied on first using apps downloaded from the internet.

To check if this attribute is applied, look for com.apple.quarantine in the list returned by this command (changing the path if that's not where you installed it):

xattr "/Applications/Visual Studio Code.app"

If that does return com.apple.quarantine, you can remove the attribute using the same command with the -d flag (alongside -r to recursively remove it from all contained files and sudo to allow the change):

sudo xattr -r -d com.apple.quarantine "/Applications/Visual Studio Code.app"

...then do Shell Command : Install code in PATH as above after the attribute has been removed, and it should persist after restart.

Credit: derflounder.wordpress.com article linked to by RicardoVallejo in this comment.


Solution 2 - Macos

I just want to pull out Benjamin Pasero's answer from inside his comment as it seems the best solution. It is the tip given on the Setting up Visual Studio Code page where it says ...

If you want to run VS Code from the terminal, append the following to your /.bash_profile file (/.zshrc in case you use zsh).

code () { VSCODE_CWD="$PWD" open -n -b "com.microsoft.VSCode" --args $* ;}

Now, you can simply type code . in any folder to start editing files in that folder. [Or code test.txt to go to work on the test.txt file]

Solution 3 - Macos

To setup path permanently for mac users;

open ~/.zshrc using the below command

vi ~/.zshrc

Add the following path

export PATH="$PATH:/Applications/Visual Studio Code.app/Contents/Resources/app/bin" 

And source it using below command

source ~/.zshrc

Now close the terminal and reopen and run code . command should work properly.

Solution 4 - Macos

If you are on Mac OSX Maverick, it's ~/.bash_profile not ~/.bashrc

Try putting the code in there, close the terminal and then try again. Should be working

Solution 5 - Macos

For Mac you can do : View > Command Palette > Shell command > "install code command in path". I'd assume there would be something similar for other OS's. After I do

which code

and it tells me it put it in /usr/local/bin

Solution 6 - Macos

follow some simple steps :

  1. open your visual studio code (vs code).
  2. press F1.
  3. pallete will open in top center with symbol >
  4. type shell .
  5. select intall 'code' command in PATH.
  6. it will be automatically intalled.

Now you can use from terminal by typing

$ code .

Solution 7 - Macos

Open VSCode, press Command + Shift + P, type Shell in command palette, Select that option => Install code in PATH from suggested list in command palette.

Solution 8 - Macos

Sometimes, just adding the shell command doesn't work. We need to check whether visual studio code is available in "Applications" folder or not. That was the case for me.

The moment you download VS code, it stays in "Downloads" folder and terminal doesn't pick up from there. So, I manually moved my VS code to "Applications" folder to access from Terminal.

Step 1: Download VS code, which will give a zipped folder.

Step 2: Run it, which will give a exe kinda file in downloads folder.

Step 3: Move it to "Applications" folder manually.

Step 4: Open VS code, "Command+Shift+P" and run the shell command.

Step 5: Restart the terminal.

Step 6: Typing "Code ." on terminal should work now.

Solution 9 - Macos

To set up VS code path permanently on Mac OS;

just open .bash_profile using the following command on terminal

open -t .bash_profile

Then add the following path to .bash_profile

code () { VSCODE_CWD="$PWD" open -n -b "com.microsoft.VSCode" --args $* ;}

save the .bash_profile file and quit the terminal. Then reopen the terminal and type code .to open VS code.

Solution 10 - Macos

For Mac users:

One thing that made the accepted answer not work for me is that I didn't drag the vs code package into the applications folder

So you need to drag it to the applications folder then you run the command inside vs code (shown below) as per the official document

  • Launch VS Code.
  • Open the Command Palette (⇧⌘P) and type 'shell command' to find the Shell Command: Install 'code' command in PATH command.

Solution 11 - Macos

Somehow using Raja's approach worked for me only once, after a reboot, it seems gone. To make it persistent across Mac OS reboot, I added this line into my ~/.zshrc since I'm using zsh:

export PATH=/Applications/Visual\ Studio\ Code.app/Contents/Resources/app/bin:$PATH then

source ~/.zshrc now, I could just do

code .

even after I reboot my Mac.

Solution 12 - Macos

How about a simple Bash alias that you stick in your .bash_profile ?

> alias code="open -a /Applications/Visual\ Studio\ Code.app"

To open the current directory: > code .

Solution 13 - Macos

For macOS 12.0 and above:

  1. Open profile in Notepad
open ~/.zshrc
  1. Create an alias for code, Paste below:
alias code='open -a "Visual Studio Code"' # open file or folder in VSCode e.g. code ~/.zshrc
  1. Now you can open the current folder e.g. code . or any other file/folder by providing its path.

  2. Profit


PS: You can add as many aliases as needed to open a file/folder with different editors. Just mention the editor's name in the alias. For example, open file/folder with sublime text:

alias subl='open -a "Sublime Text"' # open file or folder in sublime e.g. subl ~/.zshrc

And use it like subl .

Solution 14 - Macos

To set it up, launch VS Code. Then open the Command Palette (⇧⌘P) and type shell command to find the Shell Command: Install 'code' command in PATH command.enter image description here

https://code.visualstudio.com/docs/setup/mac

Solution 15 - Macos

I just made a symbolic link from the "code" program supplied in the Visual Studio Code.app bundle to /usr/local/bin (a place where I prefer to put stuff like that and which is already in my path on my machine).

You can make a symbolic link using ln -s like this:

ln -s /Applications/Visual\ Studio\ Code.app/Contents/Resources/app/bin/code /usr/local/bin/code

Solution 16 - Macos

add below snipped in your bash profile -

PATH="/Library/Frameworks/Python.framework/Versions/3.6/bin:${PATH}"
code () { VSCODE_CWD="$PWD" open -n -b "com.microsoft.VSCode" --args $* ;}

Solution 17 - Macos

I moved VS Code from Downloads folder to Applications, and then i was able to run code in the terminal. I guess, it might help you too.

Solution 18 - Macos

Yo do this:

  1. Launch Visual Studio Code.
  2. Press Cmd ⌘ + Shift ⇧ + P to open the Command Palette.
  3. Type in shell command and select the Shell command: Install ‘code’ command in PATH to install it.

Solution 19 - Macos

I simply created a file called code:

#!/bin/bash

open /Applications/Visual\ Studio\ Code.app $1

Make it executable:

$ chmod 755 code

Then put that in /usr/local/bin

$ sudo mv code /usr/local/bin

As long as the file sits someplace that is in your path you can open a file by just typing: code

Solution 20 - Macos

I prefer to have symlinks in the home directory, in this case at least. Here's how I have things setup:

: cat ~/.bash_profile | grep PATH
# places ~/bin first in PATH
export PATH=~/bin:$PATH

So I symlinked to the VSCode binary like so:

ln -s /Applications/Visual\ Studio\ Code.app/Contents/Resources/app/bin/code ~/bin/code

Now I can issue code . in whichever directory I desire.

Solution 21 - Macos

Since, default shell is zsh in macOS, you can try this:

cat << EOF >> ~/.zshrc
# Add Visual Studio Code (code)
export PATH="\$PATH:/Applications/Visual Studio Code.app/Contents/Resources/app/bin"
EOF

This will add a path to your VS Code, restart your terminal and voila, you're good to go.

> code example.py

Solution 22 - Macos

open finder and go to applications and make sure that vscode exists there ,then open type in terminal export PATH="/Applications/Visual Studio Code.app/Contents/Resources/app/bin"

Solution 23 - Macos

alias code="/Applications/Visual\ Studio\ Code\ 2.app/Contents/Resources/app/bin/code $1"

the alias to the vs code's bin file with parameters works well

you can do code . after having sourced your bash file

Solution 24 - Macos

code () {
    if [[ $# = 0 ]]
    then
        open -a "Visual Studio Code"
    else
        echo "Opening: "$@
        "/Applications/Visual Studio Code.app/Contents/MacOS/Electron" $@
    fi
}

I put that into my .bash_profile I tested it and it works.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionJohnny OshikaView Question on Stackoverflow
Solution 1 - MacosRaja JaganathanView Answer on Stackoverflow
Solution 2 - MacosdumbledadView Answer on Stackoverflow
Solution 3 - MacosVaibhav JainView Answer on Stackoverflow
Solution 4 - MacosJabran SaeedView Answer on Stackoverflow
Solution 5 - MacosJGFMKView Answer on Stackoverflow
Solution 6 - MacossherkhanView Answer on Stackoverflow
Solution 7 - MacosAhmed RazaView Answer on Stackoverflow
Solution 8 - MacosBalajiView Answer on Stackoverflow
Solution 9 - MacosRandil TennakoonView Answer on Stackoverflow
Solution 10 - MacosAhmed ElkoussyView Answer on Stackoverflow
Solution 11 - MacosFisher CoderView Answer on Stackoverflow
Solution 12 - MacosWolfgangView Answer on Stackoverflow
Solution 13 - MacosGorvGoylView Answer on Stackoverflow
Solution 14 - MacosmenzilView Answer on Stackoverflow
Solution 15 - MacosbrantView Answer on Stackoverflow
Solution 16 - MacosYash Bhardwaj ShuklaView Answer on Stackoverflow
Solution 17 - MacosdaniilorainView Answer on Stackoverflow
Solution 18 - MacosBikash PokharelView Answer on Stackoverflow
Solution 19 - MacosRichView Answer on Stackoverflow
Solution 20 - MacosDaniel LidströmView Answer on Stackoverflow
Solution 21 - MacosAnkit KumarView Answer on Stackoverflow
Solution 22 - MacosHeshamSalamaView Answer on Stackoverflow
Solution 23 - MacoslobamoView Answer on Stackoverflow
Solution 24 - MacosScourgeView Answer on Stackoverflow