web-dev-qa-db-ja.com

Sublime Textのコマンドラインツール 'subl'をターミナルにインストールしています。許可は拒否されましたか?

たとえば、sublと入力して、ターミナルからSublime Textを使用しようとしています。

私はSublime Textのウェブサイトからの手順に従っています:

セットアップ

最初のタスクは、sublへのシンボリックリンクを作成することです。 Sublime Text 2をApplicationsフォルダーに配置し、パスに〜/ binディレクトリがあると仮定すると、次を実行できます。

ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" ~/bin/subl

permission denied : ~/bin/subl: Permission Denied

私は同様の問題を探し回っていますが、該当するものが見つかりません。誰かが私を正しい方向に向けることができますか?

53

Binディレクトリがないと仮定しています。次のことができます。

cd 
mkdir bin
Sudo ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" ~/bin/subl

ln -sはbinディレクトリにsublファイルのエイリアスを作成し、コマンドを実行できるようになります。

それでも解決しない場合は、.bash_profileを編集する必要があります。次のコマンドでそれを行うことができます:(注:これを機能させるには、上記の手順を既に完了している必要があります。)

  1. .bash_profileを開きます。

    cd                  // this will get you back to home directory
    vim .bash_profile   // this will open your .bash_profile file
    
  2. .bash_profileを編集:Iを押して「挿入」モードに入り、以下を追加します。

    export PATH=$PATH:~/bin
    
  3. 保存して終了。 Escを押してコマンドモードに入ります。

    :wq   // saves and close file
    exit  // exits terminal
    
  4. ターミナルを再度開きます。

    subl --help
    

Sublime Textのヘルプが表示されます。

104
Subash

サードパーティのアプリケーション固有のシンボリックリンクへのパスの個人的な好み(例:sublbrewgithubmateなど):

/usr/local/bin

なぜ/usr/bin/ではありませんか?

  1. /usr/binは「神聖な」場所です。一般的には、 パッケージ管理システム によって管理される静的バイナリを保存することをお勧めします。 sublはこの場合ではありません。

  2. sublstableではなく、他の基本的なBSDバイナリ(たとえばfindmanmakeと共に/usr/binに格納するのに十分ではありませんなど)。 sublシンボリックリンクを手動で変更/削除する必要があります。(a)Sublime Text Editorの開発者が将来のリリースでアプリ名を変更することを決定した場合( BBEdit LiteがTextWrangler バージョン6.1以降)、または(b)Sublime Text Editorを単にアンインストールすることもできます。


したがって、/usr/local/bin/が存在すると仮定して、次の行を実行することをお勧めします。

ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" /usr/local/bin/subl
42
melvynkim

「〜/ bin /」がパスに含まれているかどうかを確認します。

より良いオプションは、代わりに/ usr/binディレクトリにシンボリックリンクを作成することです。

Sudo ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" /usr/bin/subl
15
user1427458