回答編集履歴

1

lnコマンドでエラー表示が出ていることを見逃したため、回答を修正する。

2017/08/08 06:16

投稿

coco_bauer
coco_bauer

スコア6921

answer CHANGED
@@ -1,4 +1,27 @@
1
1
  PATHの設定は、どうなっていますか?
2
2
 
3
3
  『CodeコマンドのシンボリックリンクをPATHが通っているところに』作る必要があるわけです。
4
- うまくいかないのは、PATHが通っていないところにシンボリックリンクを作ったからだと思われます。
4
+ うまくいかないのは、PATHが通っていないところにシンボリックリンクを作ったからだと思われます。
5
+
6
+ <修正・追記>
7
+ 質問に、シンボリックリンク生成(ln -s)で「File exists」(既に/usr/local/bin/codeというファイルは存在しているので、同じ名前のシンボリックを作れませんというエラーメッセージ)があるのを見逃していました。
8
+ 上記の回答は撤回し、改めて以下に回答いたします。
9
+
10
+ まず、シンボリックリンクの作成に失敗している問題:
11
+  "cd /usr/local/bin/"コマンドを実行して、/usr/local/bin/にカレントディレクトリを移動してください。
12
+  その後、"ls -l code"コマンドを実行して、code についての情報を表示してください。
13
+ codeがファイルなら、以下のような感じで、最初の文字が - になります。
14
+ -rw-rw-r-- 1 hoge hoge 30 Nov 16 03:54 code
15
+ codeがディレクトリなら最初の文字がd、リンクなら最初の文字がl(Lの小文字)になります。
16
+ drwx------ 2 hoge hoge 1024 Nov 14 00:03 code
17
+ lrwxrwxrwx 1 hoge hoge 15 Nov 16 23:11 code -> /path/to/vscode/Code
18
+
19
+  もしも、codeがファイルだったり、ディレクトリだったりした場合には、リンク先の名前(code)を別のもの(例えば、vscode)に変更することで、解決できると思います。(vscodeにリンクすれば、"vscode"とコマンドを打つことで、VScodeが起動する)
20
+  もしもリンクだったとしたら、/path/to/vscode/Codeにリンクされていることを確認してください。既に、codeが別のファイルにリンクされているなら、リンク先の名前を別のものにしてください。(既にあるリンク code を削除して良いかどうか判断できませんので、とりあえず触らずにおきましょう)
21
+
22
+ PATHに関する件:
23
+  PATHというのはlinuxの環境変数で、実行ファイルを探す場所のリストです。
24
+  "printenv PATH"というコマンドを実行すると、PATHがどのように設定されているかが表示されます。
25
+ PATHには、"/usr/bin:/usr/local/bin/:/bin"のようにディレクトリを:でつないだ文字列を設定します。
26
+  path/to/vscode/Code というのがvscodeの実行プログラムの場所なのであれば、PATHに"path/to/vscode/"を追加することで、"code"というコマンドでVScodeを実行できるようになります。
27
+ (PATHの含まれる場所にシンボリックリンクを作るという方法と、PATHに実行プログラムがある場所を追加するという方法の2つがあるという事です)