![CLI 指令被覆蓋? Visual-studio-code 與 Sublime Text 一起安裝,但 CLI 命令「code」只能開啟 Sublime](https://rvso.com/image/1157160/CLI%20%E6%8C%87%E4%BB%A4%E8%A2%AB%E8%A6%86%E8%93%8B%EF%BC%9F%20Visual-studio-code%20%E8%88%87%20Sublime%20Text%20%E4%B8%80%E8%B5%B7%E5%AE%89%E8%A3%9D%EF%BC%8C%E4%BD%86%20CLI%20%E5%91%BD%E4%BB%A4%E3%80%8Ccode%E3%80%8D%E5%8F%AA%E8%83%BD%E9%96%8B%E5%95%9F%20Sublime.png)
我正在嘗試嘗試 Visual-studio-code,看看它是否適合我。所以我安裝了它。不過,我也已經安裝了 Sublime Text 3。我一生都無法弄清楚如何讓 vscode 從 CLI/終端運行。
跑步:
code README.md
在 sublime 中開啟 README。
然而,當我which code
=> /usr/bin/code => /usr/share/code/bin/code 時, /usr/share/code 中的檔案具有 VSCode 的許可證文字檔案:
$ head -3 /usr/share/code/resources/app/LICENSE.txt
MICROSOFT SOFTWARE LICENSE TERMS
MICROSOFT VISUAL STUDIO CODE
...
我嘗試過的:
我卸載了vscode:
sudo apt remove --purge code
sudo apt install code
然而運行code someTextFile.txt
(或/usr/bin/code
或/usr/share/code/bin/code
)仍然打開 sublime 而不是 vscode。
如何修復該命令以允許我運行 vscode 以從 CLI 開啟代碼檔案?
答案1
由於上面的調試命令註釋,我只能找到這個。這個問題的根源最終如下:
我有一個如下所示的別名:
alias e="code"
後來我有一個映射函數:
函數 e() { subl }
這覆蓋了別名。因此,搜尋“code”找到了我期望的別名,但由於顯然函數首先被檢查,所以它仍然調用函數e
而不是別名。