web-dev-qa-db-ja.com

パスに〜/ binを追加するにはどうすればよいですか?

Sublime Text 2を追加するためにパスを変更するのに問題があります。~/binディレクトリと このコマンドを実行 を追加しました。

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

Sublリンクは~/binに表示されます。しかし、~/binディレクトリをパスに追加する必要があります。私はこれにかなり慣れていないので、自分の道がどこにあるのかわかりません。調べてみると、ありそうなファイルは.profile.bash_profile、または.bashrcのいずれかであることがわかりました。

.bash_profileがありません。 .profileおよび.bashrcに追加しました

PATH=$PATH:~/bin/subl
export PATH

追加するのは正しいことですか?もしそうなら、どこに追加すればいいですか?

echo $PATHの場合、次の結果が得られます。

/Users/<username>/.rvm/gems/Ruby-1.9.3-p194@Rails3tutorial2ndEd/bin:/Users/<username>/.rvm/gems/Ruby-1.9.3-p194@global/bin:/Users/<username>/.rvm/rubies/Ruby-1.9.3-p194/bin:/Users/<username>/.rvm/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

sublと入力すると、次のようになります:

-bash: subl: command not found

ありがとう!

追伸以前に.profileファイルを変更したMacportsをインストールしました。これに何か関係があるかどうかはわかりません。デフォルトの.profileがどのように見えるかわかりません。

69
Graeme

私はあなたと同じくらい新しい人でした。つまり、PATHの変更に関連するものの半分を読む方法すらわからなかったということです。最終的には、sublを.rvm/binに入れる必要はなく(別の目的のため)、適切なディレクトリ(〜/ bin)に入れる方法を見つけました。

ターミナルに移動して、次を入力します。

open -a Finder /usr/bin

これにより、Finderが/ usr/binディレクトリに開きます。新しいFinderを開いたら、[アプリケーション]に移動し、[Sublime Text]アイコンを右クリックして[パッケージコンテンツの表示]に移動し、次に[コンテンツ]、[SharedSupport]、[bin]に移動します。 sublファイルをコピーして、/ usr/binを表示する他のFinderに貼り付けます

それでおしまい!次のコマンドを使用するように設定する必要があります。

subl . (or subl file.name)
88
dgamboa

ここでコメントされたすべてのinstread。 /usr/local/binに昇華するためのシンボリックリンクを追加する必要があります。ルートアクセスは必要ありません。また、別のbinディレクトリを作成する必要はありません。

Sublime Text 2の場合

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

Sublime Text 3の場合

ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/
48

zshの更新何らかの理由で、最近bashからzsh/preztoに切り替えたときに、パスの「〜/ bin」が機能していませんでした。 「/ Users/myusername/bin」に変更しましたが、再び正常に動作します。理由を探して、見つけたら更新します。より良い解決策がある場合はコメントしてください。

私はこれが古い投稿であることを知っていますが、OSXコマンドラインから崇高に作業するための sublimetextによって与えられた指示 に従うことを試みている他の誰かのための解決策を文書化すると思いました。 Sublime Text 3の更新Sublime Text 3 Documentation

1)ホームディレクトリ「〜/」に「bin」というディレクトリを作成します

mkdir ~/bin

2)作成したばかりの新しいディレクトリに、崇高なテキスト2アプリへのシンボリックリンクを作成します

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

Sublime Text 3のアップデートアプリのパスは少し異なります:

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

3)OSXのパスに簡単に追加する方法について、Ryan Hoffmanの指示に従います。 Mac OSXのパスに追加 彼のテクニックを使用して、新しく作成した「〜/ bin」をパスに追加します。終了すると、/ etc/pathsファイルは次のようになります(最後に〜/ binがあります)。

/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin
~/bin

4)新しいターミナルウィンドウを開き、コマンドラインからsublの使用を開始します。

37
Shawn

PATH=$PATH:~/bin/sublを実行する必要はありません。代わりに、PATH=$PATH:~/binで十分です。そのようにして、バイナリに対して~/binを調べるようシェルに指示しています。コマンドを使用して、シェルに対して、「フォルダ」~/bin/sublのバイナリを調べるように指示しましたが、これは機能しません。さらに、コマンドを2つのファイルに追加する必要はありません。 .bashrcに一度追加してください。私はbashの専門家ではありませんが、さまざまなスタートアップファイルの詳細については このブログ投稿 を読むことをお勧めします。

11
Gnosophilon

この問題の代替解決策を提示したいと思います。既にパスにあるディレクトリを使用します。このような:

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

tl; dr

Yosemite(OS X 10.10)でも同じ問題が発生しました。OSの新規インストールでは、〜/ binディレクトリが存在せず、パスにありません。それでも、Sublimeへのシンボリックリンクを配置できるパスには、既に多くの便利な場所があります。

たとえば、現在私のパスにあるアイテムは次のとおりです($ echo $PATHを使用してリストを取得します)。

/Applications/Postgres.app/Contents/Versions/9.3/bin
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin:/usr/local/bin
/usr/local/mysql/bin

~/bin/sublと書かれている部分を/usr/local/bin/sublに変更することで、パス内の既存の場所を使用するようにスクリプトを簡単に変更できます。

したがって、次のコマンドを実行すると目標を達成できます。

$ Sudo ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" /usr/local/bin/subl
7
Greg Hemphill

まず、/usr/binへのシンボリックリンクを作成する必要があります。シンボリックリンク-またはSymLink-は、ディレクトリへのエイリアスまたはショートカットです。次のようにしてください:

  1. まず、ターミナルコマンドラインを使用してホームディレクトリにいることを確認します

    cd ~

  2. usr/binディレクトリへのシンボリックリンクを作成します。

    ln -s /usr/bin bin

    ln =リンクの作成、-s =シンボリック、その後に[target diectory]および[name of link]が続く

  3. 新しいリンクをテストする

    cd bin

    ~/binに移動します-/usr/binと同じです。 ~は、内部に長いパスが隠されていることを示します。

  4. ここで、ホームフォルダーに戻り、sublコマンドをインストールします。

    cd ~

  5. Sublime Text 2コマンドラインツールをインストールします。 Sudoを使用して、許可ブロックをバイパスします。

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

    あなたは行ってもいいはずです!コマンドラインとしてsublを入力するだけでテストし、ターミナルからSublime Text 2を起動します。

3
mpaiva

同じ課題があり、最終的に.bash_profileファイルを作成し、そこにパスステートメントを直接追加しました。問題なく働いた。また、Alvin Alexanderのサンプル.bash_profile投稿も確認してください( http://alvinalexander.com/blog/post/mac-os-x/sample-mac-osx-bashrc-terminal-startup-file )-追加する他の便利なコマンドがいくつか見つかりました。

2
lpaglione

私は最近この問題に苦労していました。 ~がパス内のホームディレクトリに展開されていないことに気付きました。少なくとも私にとってはそうではありませんでした。

これは私がそれを機能させるためにしたことです。

export PATH=$PATH:$HOME/bin

私のsublは、醸造キャスクについて見つけたいくつかのフォローアップ手順に従って、アプリケーションディレクトリから~/binにリンクされました。残念ながら、パスは更新されませんでした。

2
EHLOVader

ターミナルでこれを簡単に行います:

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

Sublimeが保存されている場所です。バージョンが異なる可能性があるため、Sublimeへのパスを入力してみてください。

subl . 

正常に動作するはずです。

2
cassioscabral

これを行うための完全な手順は次のとおりです(Sublime Textの場合):

  1. 次のコマンドでシステム整合性保護のステータスを確認してください。

    $ csrutil status
    

    有効になっている場合は、次の手順に従ってください。

    1. マシンを再起動し、起動時にCommand + Rを押して、OS XのリカバリOSを起動します。

    2. [ユーティリティ]メニューからターミナルを起動します。

    3. 次のコマンドを実行します。

      $ csrutil disable
      $ reboot
      

    これは、セキュリティ機能 OS Xのシステム整合性保護が原因で、システムの場所とプロセスへの不正アクセスを防ぎます。したがって、この機能がenabledの場合、wontは/ usr/binの内容を変更できます。

  2. / usr/binから〜/ binへのシンボリックリンクを作成します:

    $ Sudo ln -s /usr/bin ~/bin
    
  3. Sublime Text 3 CLIツールから〜/ binへのシンボリックリンクを作成します。

    $ Sudo ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl ~/bin
    
  4. 試して。

    $ subl .
    
1
Birkhoff Lee
echo $PATH

すでにそこにあるパスの1つを使用します。この例では、「/ usr/local/bin」

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

システムがNo such file or directoryを返す場合

Sudo mkdir /usr/local/bin/
Sudo ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" /usr/local/bin/subl

動作しているかテストする

subl

これはSublime Text 3用です。

1
sparkbold

Yosemiteでは、コマンドは実際にはSublime 3向けであるように見えますが、誤解される可能性があります。

    ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/
0
William Koplitz

次は私と一緒に動作します。 Sublimeバージョン3があり、誰かが助けを求めているならここに投稿します:

Sudo ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" /bin/subl
0
avi