Ich möchte mich im Voraus entschuldigen, dass dies eine Neulingfrage ist! Ich habe die letzten 2 Stunden damit verbracht, eine Lösung zu finden.
Ich habe zwei Probleme (ich bin mir sicher).
Hintergrund:
So sieht mein $ PATH aus:
/Users/Sponsi/.rvm/gems/Ruby-1.9.3-p194/bin:/Users/Sponsi/.rvm/gems/[email protected]/bin:/Users/Sponsi/.rvm/ rubies/Ruby-1.9.3-p194/bin: /Users/Sponsi/.rvm/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/X11/bin
Problem # 1
Ich versuche, den Befehlszeilenbefehl "subl" zu verwenden, um Sublime Text 2 unter OSX zu starten.
Ich habe den folgenden Befehl eingegeben: "ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" ~/bin/subl
Es funktionierte nur zur Hälfte - wenn ich "subl" eingebe, bekomme ich "Befehl nicht gefunden". Wenn ich jedoch den Befehl erneut eingebe, wird "Bereits existiert" angezeigt.
Ich habe online gesucht und eine (etwas) Korrektur gefunden. Ich fügte meinem .bashrc folgendes hinzu:
echo 'export PATH="./bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
Der Befehl "subl" funktioniert jedoch nur vorübergehend. Wenn ich das Terminal verlasse oder zu einem anderen Verzeichnis wechsle, funktioniert es nicht mehr (bringt mich zu Problem Nr. 2, siehe unten.)
Problem # 2:
Wenn ich versuche, eine Datei unter einem anderen Verzeichnis mit dem Befehl "subl" abzurufen, bekomme ich "-bash: ./bin/subl: Keine solche Datei oder ein solches Verzeichnis". Ich habe bestätigt, dass die zu bearbeitende Datei vorhanden ist.
Übrigens, ich folge dem Ruby-Tutorial unter @ http://Ruby.railstutorial.org/Ruby-on-Rails-tutorial-book
Vielen Dank für deine Zeit!
Führen Sie jeden Befehl im Terminal aus (in dieser Reihenfolge):
$ Sudo rm -rf /usr/local/bin/subl
$ Sudo ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/local/bin
$ subl .
Das sollte funktionieren!
Hinweis: Zuerst sollten Sie überprüfen, ob sich die App Ihres Sublimes in dem Ordner "Applications" befindet und der Name "Sublime Text 2" ist. Andernfalls sollten Sie den Namen im zweiten Befehl ändern und den Namen der App des Sublimes eingeben.
wenn Sie RVM verwenden, machen Sie Folgendes:
ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" ~/.rvm/bin/subl
Ich steckte meine in/usr/bin
Sudo ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/bin
oder für Sublime 3 oder höher
Sudo ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/bin
Es ist bereits in $ PATH
Für El Captain oder später OS:
In El Capitan dürfen Sie nicht in/usr/bin schreiben, aber in/usr/local/bin schreiben ist in Ordnung. Standardmäßig sollte/usr/local/bin auch in Ihrer Pfadvariablen enthalten sein.
Für Sublime Text 3
Sudo rm /usr/local/bin/subl
Sudo ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/subl
Für Sublime Text 2
Sudo rm /usr/local/bin/subl
Sudo ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/local/bin/subl
Ich hatte das gleiche Problem, vor kurzem auf einem neuen Mac konfiguriert. Ich hatte RVM vor oh-my-zsh und sublime Text installiert, und ich hatte die gleichen Probleme. Ich habe verschiedene Orte auf dem Weg ausprobiert
/usr/bin
/usr/local/bin
alle auf dem Weg. Was für mich funktionierte, war, die Zitate in der Befehlszeile, die als ausgeführt wurden, zu entfernen
Sudo ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/bin/subl
Wenn Sie Sublime Text 3 verwenden, müssen Sie die Befehle in isanjosgons Antwort anpassen:
$ Sudo rm -rf /usr/local/bin/subl
$ Sudo ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/
$ subl .
Sie können auch einen neuen Alias erstellen, wenn Sie möchten
alias subl = "/ Applications/Sublime\Text.app/Contents/SharedSupport/bin/subl"
Bearbeiten Sie Ihre ~/.bashrc
-Datei so, dass sie am Ende dieser Zeile eine Zeile enthält:
export PATH="$HOME/bin:$PATH
Beachten Sie, dass ~
anstelle des .
aus Ihrem Beispiel vorhanden ist. ~
bezeichnet Ihr Heimatverzeichnis, in dem sich Ihre .bashrc
-Datei befindet. Der Punkt kennzeichnet das Verzeichnis current Ihres Terminalfensters.
Wenn Sie die Änderung vorgenommen haben, schließen Sie das Terminalfenster und öffnen Sie es erneut. Dann sollte subl
im PATH verfügbar sein.
Könnte es sein, dass Sie in Ihrem Heimatverzeichnis kein Bin-Verzeichnis eingerichtet haben (d. H. ~/Bin)? Um dies zu überprüfen, geben Sie Folgendes ein:
cd ~/
ls -l
Wenn es kein bin-Verzeichnis gibt, geben Sie Folgendes ein:
mkdir bin
Nachdem Sie das Verzeichnis erstellt haben, geben Sie Folgendes erneut ein:
subl --help
Hoffentlich kümmert sich das um das Problem
Nach einer Aktualisierung von Sublime Text wurde der Pfad geringfügig geändert.
ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" ~/.rvm/bin/subl
$ alias subl="/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl"
$ subl .
Das funktioniert! : D
Wenn Sie das Verzeichnis geändert oder das Terminal erneut geöffnet haben, funktioniert der PATH nicht, weil .bashrc eine interaktive Datei ohne Login ist.
Verwenden Sie einfach diese Zeile im Terminal:
echo 'export PATH=$PATH:~/bin' >> ~/.bash_profile
wird das Problem wahrscheinlich lösen, da .bash_profile bei jedem Login geladen wird.
wenn Sie nicht über .bash_profile.... verfügen, bevor Sie den obigen Befehl verwenden, geben Sie Folgendes in Terminal ein:
cd ~
touch .bash_profile
verwenden Sie dann den formalen Befehl.
Ich würde normalerweise nicht usr/local/bin anfassen, da es ein Ordner auf Systemebene ist. Ich habe gehört, dass Apple kürzlich in OS X El Capitan einige Berechtigungseinschränkungen auferlegt hat ..__ Legen Sie also den Klon in Ihr Home-Verzeichnis unter/bin und fügen Sie den PATH in Ihr .bash_profile ein, dann sollte alles funktionieren.
In Linux sublime 3 in Ihr Terminal einfügen
Sudo ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/bin
Dann
subl3 [filename]