3

Я просмотрел все переполнение стека, и у всех была проблема. Я просто не могу получить какие-либо решения для работы на моем Mac.Запуск Sublime Text 2 из терминала (Mac OS El Capitan)

Я попытался sudo mkdir /usr/local/bin, sudo mkdir -p /usr/local/bin, и мой терминал говорит:

mkdir: /usr/local: No such file or directory 
mkdir: /usr/local/bin: Operation not permitted 

Когда я cd /usr и ls он показывает мне эти файлы:

X11 
adic 
lib 
sbin 
standalone 
X11R6 
bin 
libexec 
share 

Был там, как предполагается, будет local в папке usr?

В любом случае, я не могу создать каталоги внутри папок usr или usr/bin или даже использовать ls. Почему это происходит? Есть ли способ заставить терминал создать каталог?

Я также новый и пытается получить понимание того, как терминал действительно работает ...

+0

Добро пожаловать в Stack Overflow! Пожалуйста, прочитайте [Как я могу форматировать свои сообщения с помощью Markdown или HTML?] (Http://stackoverflow.com/help/formatting) некоторое время, поскольку, похоже, вы изо всех сил пытаетесь правильно форматировать. – usr2564301

ответ

5

Я не повышен до El Capitan, частично по этой причине, но поставив subl~/bin в симлинк будет работать для любой версии OS X. Во-первых, хотя , Я настоятельно рекомендую использовать Sublime Text 3. Несмотря на то, что он называется «бета», он прочный и имеет множество функций, улучшений и исправлений ошибок по сравнению с ST2. Я использую его исключительно более двух лет, и я не мечтал бы вернуться.

  1. В вашем домашнем каталоге создайте каталог bin ($ является подсказка терминала, не вводите его):

    $ cd 
    $ mkdir bin 
    
  2. Создание символической ссылки. Если вы используете ST3, это правильная команда. В противном случае, добавьте \ 2 между Text и .app:

    $ ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl ~/bin/subl 
    
  3. Либо открыть или создать ~/.profile или ~/.bashrc (если у вас уже есть, использовать которые в противном случае используйте .profile.):

    $ bin/subl .profile 
    
  4. Добавьте (на самом деле неважно, где в указанном файле):

    export PATH=$HOME/bin:$PATH 
    

Сохраните файл, перезапустите сеанс терминала и команду subl теперь должны быть доступны.


на основе ваших комментариев, я подозреваю, что Sublime Text.app может быть на самом деле в вашем /Users/username/Applications каталоге вместо /Applications. Попробуйте выполнить следующие команды, чтобы проверить это:

$ cd 
$ rm bin/subl 
$ ln -s /Users/username/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl $HOME/bin/subl 
# where username is your actual user name 
$ bin/subl .bashrc 

Если Sublime открывается либо с фактическим .bashrc или пустой файл, то вы хорошо идти — вы можете добавить команду export PATH=..., как описано выше, и сохраните файл. Имейте в виду, что путь для команды ln предполагает, что вы используете Sublime Text 3, как рекомендовано.

+0

Спасибо, я думаю, что понял ... Я сделал эти шаги, но мне пришлось «source.profile», прежде чем я смог использовать команду 'subl'. Это сработало, но у меня есть еще два вопроса ... Должен ли я перейти к настройкам терминала и запустить его с помощью 'source .profile' сразу? И могу ли я добавить больше команд в '.profile', которые я создал, или это противоречило бы пути, который у меня был для возвышенного? Заранее спасибо. – happycrappie

+1

@happycrappie, какую оболочку вы используете? '~/.profile' должен автоматически быть отправлен. Если это не так, попробуйте переименовать его в '.bashrc' или' .bash_profile': 'mv .profile .bashrc' должен это сделать. Вы можете добавить столько команд в ваш '.profile' или' .bashrc', сколько хотите - это просто скрипт оболочки, который запускается с помощью оболочки входа. Mine в настоящее время 101 линия длиной ... – MattDMo

+0

Idk, какая оболочка ... Я полагаю, что это стандартный (я новичок во всем этом Терминале, но я пытаюсь понять его). В любое время, когда я пытаюсь «что-то» в '~/папке, это не позволяет мне. Он показывает следующее: '$ sudo ln -s/Applications/Sublime \ Text.app/Contents/SharedSupport/bin/subl ~/bin/subl Пароль: ln: ~/bin/subl: Нет такого файла или каталога' даже когда я 'sudo'. – happycrappie

-1

Это из-за новой системы El Capitan в безродный: в основном корень не может получить доступ к системным каталогам больше.

Чтобы отключить эту функцию, выполните следующее: Disabling rootless mode on El Capitan

+1

Я читал об этом, и большинство людей думает, что не рекомендуется отключать 'csrutil'. Есть ли другой способ, например, создать «bash_profile», например? – happycrappie

+0

rootless mode не ограничивает '/ usr/local'. На своей сессии WWDC на этой теме специально указано, что это разрешенное место, которое не ограничено режимом без rootless. Но если он не существует, вы не можете создавать под ним каталоги. –

1

Если /usr/local не существует, попытка создать /usr/local/bin не удастся, потому что его негде не указывать. Сначала вы можете создать /usr/local или использовать флаг -p для mkdir, который автоматически создаст любые отсутствующие каталоги в пути.

mkdir -p /usr/local/bin 

Ответ, указывающий на безродного режим El Capitan является не правильно. В режиме без корней четыре места не ограничены.

/usr/local 
/Applications 
/Library 
~/Library 
0

Я имел аналогичные проблемы и все попытки создания, удаления и воссоздания символическая не работать, даже если моя $PATH переменная и ~/.bash_profile содержимое выглядело так, как ожидалось. Что в конечном счете работал для меня, чтобы удалить пространство из фактического Блистательной каталога установки (/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl) и запустив создание символьной ссылки в

$ ln -s /Applications/SublimeText.app/Contents/SharedSupport/bin/subl ~/bin/subl 
Смежные вопросы