CLIコマンドが上書きされていますか?Visual Studio CodeはSublime Textと一緒にインストールされていますが、CLIコマンド「code」はSublime Textのみを開きます

CLIコマンドが上書きされていますか?Visual Studio CodeはSublime Textと一緒にインストールされていますが、CLIコマンド「code」はSublime Textのみを開きます

私は Visual Studio Code を試してみて、それが自分にとって良いコード エディターかどうかを確認しようとしています。そのため、インストールしました。ただし、Sublime Text 3 もすでにインストールされています。CLI/ターミナルから vscode を実行する方法がどうしてもわかりません。

ランニング:

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) を実行すると、vscode ではなく sublime が開きます。

CLI からコード ファイルを開くために vscode を実行できるようにコマンドを修正するにはどうすればよいですか?

答え1

私は、上記のデバッグ コマンドに関するコメントのおかげで、この問題を見つけることができました。この問題の原因は、次のとおりです。

次のようなエイリアスがありました:

alias e="code"

その後、マッピングする関数を作成しました:

関数 e() { subl }

これはエイリアスを上書きしていました。したがって、「コード」を検索すると、期待したエイリアスが見つかりました。ただし、どうやら関数が最初にチェックされるので、eエイリアスではなく関数が呼び出されていました。

関連情報