从Mac终端运行/打开VSCode

781
我想通过运行命令code .在Mac OSX终端上打开Visual Studio Code。我在这里找到了说明:https://code.visualstudio.com/Docs/setup。显然,我需要将其包含在我的.bashrc文件中,所以我这样做了,但没有成功。
code () {
    if [[ $# = 0 ]]
    then
        open -a "Visual Studio Code"
    else
        [[ $1 = /* ]] && F="$1" || F="$PWD/${1#./}"
        open -a "Visual Studio Code" --args "$F"
    fi
}

我在这里编辑了.bashrc文件:

〜/ .bashrc 指向/ Users /用户名/ .bashrc

我应该编辑哪个.bashrc


3
在添加完函数后,你是否执行了 .bashrc 文件?可以通过 $ source ~/.bashrc 命令来执行。建议你在 ~/.bash_profile 中执行 .bashrc 文件。 - Sarbbottam
2
OS X 中,通常将其添加到您的 ~/.bash_profile 而不是 ~/.bashrc,然后重新启动 Terminal.app 或像提到的那样进行源操作。 - l'L'l
2
l'L'l 是正确的,将代码片段添加到 .bash_profile 中起作用。 - Charlie Wu
2
在 VS Code 0.3.0 中,我们建议使用不同的语法来执行代码命令。这种新的语法支持多个参数,并正确识别当前工作目录:code () { VSCODE_CWD="$PWD" open -n -b "com.microsoft.VSCode" --args $* } - Benjamin Pasero
2
这应该是正确的答案。 - lukas_o
显示剩余5条评论
28个回答

2567

根据从命令行启动的文档:

  1. 打开 Visual Studio Code
  2. 使用 Command + Shift + P(或 F1)打开命令面板
  3. 在命令面板中输入 Shell
  4. 从建议列表中选择 Shell Command: Install code in PATH

通过终端/命令提示符打开 VSCode

就这样。

现在打开你的终端并输入。

$ code .

如何在MacOS中使此更改保持生效

许多Mac用户发现,每次重新启动后都需要重新应用此更改,这可能是因为MacOS已将隔离属性应用于VS Code,而操作系统用于首次使用从互联网下载的应用程序时应用的“您确定吗?”通知。

要检查是否应用了此属性,请查找此命令返回的列表中的com.apple.quarantine(如果安装路径不在那里,则更改路径):

xattr "/Applications/Visual Studio Code.app"
如果返回的是com.apple.quarantine,你可以使用相同的命令加上-d标志来删除该属性(同时加上-r以递归地从所有包含的文件中移除,并使用sudo允许更改):
sudo xattr -r -d com.apple.quarantine "/Applications/Visual Studio Code.app"

...然后移除属性后,请按照上述方式执行Shell Command:Install code in PATH,并在重新启动后保持。

来源:derflounder.wordpress.com文章,由RicardoVallejo此评论中链接



15
这个方法并不是通过将完整路径添加到 PATH 变量中来使 VSCode 生效,而是引入了一个符号链接 /usr/local/bin/code@ -> /Applications/Visual Studio Code.app/Contents/Resources/app/bin/code,对于来自 Linux 背景的人来说似乎很奇怪,但我猜这就是 MacOS 的工作方式。 - Scott Stensland
10
如果您在重启时遇到“code .”命令失效的情况,则可能是因为安装的code程序被隔离了。请参考此链接以了解如何清除已下载应用程序的隔离扩展属性。 - RicardoVallejo
8
我刚刚执行了这个命令:ln -s "/Applications/Visual Studio Code.app/Contents/Resources/app/bin/code" /usr/local/bin/vscode - Andre Ravazzi
9
为什么这个设置没有被保存,每次重启后我都需要重新设置? - Cezar Cobuz
2
@CezarCobuz 我已经编辑了一个章节,介绍如何避免在重启后需要重新执行此操作,基于RicardoVallejo评论中提供的链接 - user56reinstatemonica8
显示剩余7条评论

80
我只想从Benjamin Pasero的评论中提取其答案,因为它似乎是最好的解决方案。这是在“设置Visual Studio Code页面”上给出的提示,链接在此处,其中提到如果你想要从终端运行VS Code,请将以下内容添加到你的 ~/.bash_profile 文件(如果你使用zsh则是 ~/.zshrc)。
code () { VSCODE_CWD="$PWD" open -n -b "com.microsoft.VSCode" --args $* ;}

现在,您只需在任何文件夹中键入code .即可开始编辑该文件夹中的文件。[或者code test.txt以在test.txt文件上工作]


3
我喜欢这种方法的原因是可以使用“vscode”来启动 VS Code 而不是 “code”。 - jj.
这里使用函数而不是别名。函数是更好的方式,因为你可以在不必先取消定义的情况下重新定义函数。 - undefined
我喜欢这个方法的简单性,它不需要像被接受的答案那样进行其他步骤。 - undefined

61
为Mac用户永久设置路径,请使用以下命令打开~/.zshrc
vi ~/.zshrc

添加以下路径

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

并使用以下命令进行引用

source ~/.zshrc

现在关闭终端并重新打开,然后运行 code . 命令应该正常工作。


对我没有起作用。 - Eydwales
检查路径。可能因您的系统而异。 - Tejashree
完美运行,谢谢!你也可以直接从根目录打开文件。 例如: open .zshrc - Mara Tata San
如果你在终端中加载配置文件,就不需要关闭终端。 - Martian

32

跟随以下简单步骤:

  1. 打开你的Visual Studio Code (VS Code)。
  2. 按下F1键。
  3. 弹出窗口会在屏幕顶端中央显示符号 > 。
  4. 输入 shell 。
  5. 选择安装“code”命令到PATH。
  6. 它将自动安装。

现在你可以通过在终端中输入以下命令来使用:

$ code .


以上所有答案中最简单的答案! - Hamza
不错!简单而有效。 - EigenFool

23

打开VSCode,按Command + Shift + P,输入Shell命令,从建议列表中选择该选项 => 安装code in PATH。


22
如果你使用的是Mac OSX Maverick系统,那么需要编辑~/.bash_profile文件,而不是~/.bashrc。将代码放在该文件中后,关闭终端,再次尝试即可生效。

13
这种方法已经不是最新的了,请使用 https://dev59.com/kl0a5IYBdhLWcg3wqaRS#36882426 中的指示。现在,这是代码中的一个内置功能,您只需要告诉它为您安装即可。 - Kyle Brandt
感谢 @KyleBrandt 发布更新的说明。 - swyx

19

对于Mac用户,您可以执行以下操作: 查看 > 命令面板 > Shell命令 > “将Code命令安装到路径中”。我想其他操作系统应该也有类似的功能。完成后,我会...

View > Command Palette > Shell command > "install code command in path". 我假设其他操作系统应该也有类似的功能。完成后,我会...
which code

它告诉我它已经放置在 /usr/local/bin 中。


1
这个答案并没有完全回答问题,但是这个命令对我的命令知识是一个很好的补充。它非常有帮助,可以找到我们使用的任何命令的源。 - Aswin Prasad
1
我的想法是,只要我能输入“代码”,并且它可以从终端启动,那对我来说就足够了。我使用 which 命令查看它的位置。如果自动化无法正常工作,我会去编辑配置文件等。我喜欢“保持简单”的原则;-) - JGFMK

18

适用于macOS 12.0及以上版本:

  1. 在Notepad中打开个人资料
open ~/.zshrc
  1. 创建一个名为code的别名,将以下内容粘贴:
alias code='open -a "Visual Studio Code"' # open file or folder in VSCode e.g. code ~/.zshrc
  1. 现在,您可以通过提供其路径打开当前文件夹,例如 code .或任何其他文件/文件夹。

  2. 利润


PS:您可以添加尽可能多的别名来使用不同的编辑器打开文件/文件夹。只需在别名中提到编辑器的名称即可。例如,使用sublime text打开文件/文件夹:

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

然后像这样使用它 subl .


2
我更喜欢这个解决方案,因为我不想覆盖我的现有 $PATH 变量。 - Jesse H.
1
好的!对我有用,而且我不必去处理$PATH。 - Cattani

17
有时候,仅仅添加shell命令是不够的。我们需要检查Visual Studio Code是否在“应用程序”文件夹中可用。这也是我的情况。
当你下载VS Code时,它会停留在“下载”文件夹中,终端无法从那里捕获到它。所以,我手动将我的VS code移动到“应用程序”文件夹中,以便可以从终端访问。
步骤1:下载VS Code,这将给出一个压缩文件夹。
步骤2:运行它,在下载文件夹中会得到一个.exe文件。
步骤3:手动将其移动到“应用程序”文件夹中。
步骤4:打开VS Code,“Command+Shift+P”并运行shell命令。
步骤5:重新启动终端。
步骤6:现在在终端键入“Code .”应该有效了。

15
为了在Mac OS上永久设置VS Code路径,只需在终端上使用以下命令打开.bash_profile即可:
open -t .bash_profile

然后将以下路径添加到.bash_profile中。
code () { VSCODE_CWD="$PWD" open -n -b "com.microsoft.VSCode" --args $* ;}

保存.bash_profile文件并退出终端。然后重新打开终端,输入code .以打开VS Code。


很好的回答。再提供一个小技巧:如果你不想重启终端,在编辑完 .bash_profile 文件后,运行 source ~/.bash_profile 命令即可在当前终端中重新加载最新的配置。 - Bere

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接