Виникли проблеми з створенням символьної посилання між терміналом в Mac OS X і Sublime Text 2, щоб його можна було запустити з командного рядка


0

Я використовую Mac OS X Yosemite, і я хочу мати можливість відкрити Sublime Text 2 з терміналу з такою командою:

sublime .

Я набрав це в терміналі як показано на веб-сайті Sublime Text 2:

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

А також цей варіант:

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

У терміналі, якщо я введу:

echo $PATH

Я отримав:

/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

Я спробував редагувати свій .bash_profile, зараз він порожній

Після всього цього я намагаюся sublime . і отримати таку помилку:

-bash: sublime: команда не знайдена

Я абсолютно новачок у Mac OS X і конфігурації терміналів, і я дуже намагаюся з'ясувати, чому я не можу змусити його працювати, тому будь-яка допомога буде оцінена.


Я знайшов іншу повідомлення що вирішило мою проблему.
Ryan Oliver Lanham

Відповіді:


5

Спробуйте запустити версію, що знято назад / вилучено ln -s як описано тут так:

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

Як це пояснює сайт - і я згоден - ~/bin що офіційний сайт Sublime Text рекомендує просто дивно, і я ніколи раніше не стикався з такою рекомендацією для місцевих бінарних файлів. Тому уникайте його використання.

Але те, що теж дивно в усіх прикладах, це sudo не використовується. Це /usr/local/bin Каталог є директорією кореневої системи і зазвичай не доступний для запису root. Тому, маючи це на увазі, просто виконайте команду вище sudo подобається це:

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

Звичайно, тепер вам доведеться ввести пароль адміністратора / адміністратора. Але як тільки це буде зроблено, символічне посилання має бути на місці. А щоб підтвердити, що це просто запустіть цю команду з терміналу:

ls -la /usr/local/bin/sublime

Вихідні дані повинні бути каталогом з датами / часом, які виглядають приблизно так:

lrwxr-xr-x   1 root  wheel       27 Aug 21  2015 sublime -> /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl

1
Дякуємо, що знайшли час, щоб відповісти. Я вважаю, що ваше рішення є певним, але проблема полягає в тому, що ми не видаляли стару символічну посилання, яку я створив, використовуючи офіційну рекомендацію сайту Sublime Text. Принаймні, я так розумію.
Ryan Oliver Lanham

1
Майже через три роки ця відповідь також вирішила проблему для мене. Наведена версія ln -s як це передбачено інструкціями, не працювали для мене, перемикання на версію з зворотним шаром / втечею, а також використання sudo вирішили все прекрасно.
Scottie

-1

Це має бути дуже проста річ, з вбудованим open команда -

open -a "Sublime Text 2"

Ви також можете створити a sublime псевдонім команди для цього.

alias sublime='open -a "Sublime Text 2"'

Хоча це корисно для програми, яка не має власного вбудованого двійкового файлу для легкого використання терміналу, Sublime Text дійсно має такий бінарний код, як пояснюється у запитаннях і відповідях, а також цієї сторінки розташований у /Applications/Sublime Text2.app/Contents/SharedSupport/bin/subl. Йдеться про те, як успішно створити символічне посилання в терміналі з цього двійкового коду /usr/local/bin/sublime для легкого доступу.
JakeGould
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.