Назад | Перейти на главную страницу

Где хорошее постоянное место для установки пользовательских сценариев bash?

Я собираюсь установить "leiningen", который представляет собой сценарий bash для языка программирования clojure с большой полезностью ... ... но я не уверен, где подходит -put- исполняемый сценарий в Linux система, чтобы она была доступна постоянно и стабильно.

Я не думаю, что где-нибудь в / home имеет смысл, но я не знаю, какие каталоги / каталоги должны использоваться для этого.

/ usr / share?

(Заметка: ~ переводится как /home/user в этом посте)

Лично я помещаю все свои собственные системные скрипты в /usr/local/bin и все мои личные сценарии bash в ~/bin. Очень немногие программы, которые я устанавливаю, помещаются в /usr/local/bin каталог, поэтому он не слишком загроможден и уже был в $PATH переменная на большинстве моих машин.

Добавить /usr/local/bin в ваш системный путь (если его еще нет) добавьте это в /etc/profile:

PATH=$PATH:/usr/local/bin
export PATH

Добавить ~/bin к пути вашего пользователя добавьте это в ~/.bash_profile:

PATH=$PATH:$HOME/bin
export PATH

Иногда по умолчанию .bash_profile файл будет иметь оператор if, который автоматически добавляет ~/bin к $PATH если он существует, создайте ~/bin и откройте новый терминал, чтобы узнать, делает ли это уже ваш.

/ usr / local / действительно подходящее место, а / opt действительно для сторонних приложений; «/ opt зарезервирован для установки дополнительных пакетов программного обеспечения». Это часть стандарта иерархии файловой системы.

Видеть http://www.pathname.com/fhs/pub/fhs-2.3.html для обсуждения по / opt.

Для / usr / local / он предназначен для «использования системным администратором». Только не забывайте о том, что там есть - задокументируйте.

Раньше вы использовали что-то вроде / opt. Все в порядке, если оно обновляется в $ PATH для пользователей, которые должны его иметь (следовательно, что-либо в / home - плохая идея).

/usr/share/clojure кажется обычным местом для размещения двоичных файлов и библиотек clojure - почему я не знаю, это кажется естественным для /usr/local/share/clojure- так что создавая site подкаталог для этих сценариев bash выглядит нормально.

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

/usr/local, Я считаю, что есть некоторая путаница в значении слова «местный».

Насколько я понимаю, «локальный» не означает «исходящий на / с локальной машины», а, проще говоря, «специфический для локальной машины», который может исходить или не исходить на / с локальной машины.