Просто поместите встроенную новую строку в строке:
PS1='$(echo $?): $PWD
>> '
В целом, если бессистемность, установленный и сохраняемый двоичный файл должен быть доступен в масштабе всей системы для многочисленных пользователей, он должен быть помещен администратором в /usr/local/bin
. Существует полная иерархия под /usr/local
это обычно используется для локально скомпилированных и установленных программных пакетов.
Если Вы - единственный пользователь двоичного файла, устанавливающего в $HOME/bin
соответствующее местоположение, так как можно установить его сами, и Вы будете единственным потребителем. При компиляции пакета программного обеспечения из источника также уместно создать частичную или полную локальную иерархию в Вашем $HOME
каталог. Полная локальная иерархия была бы похожа на это.
$HOME/bin
Локальные двоичные файлы$HOME/etc
Определенная для хоста конфигурация системы для локальных двоичных файлов$HOME/games
Локальные игровые двоичные файлы$HOME/include
Локальные заголовочные файлы C$HOME/lib
Местные библиотеки$HOME/lib64
Локальные 64-разрядные библиотеки $HOME/man
Локальные руководства онлайн$HOME/sbin
Локальные системные двоичные файлы$HOME/share
Локальная архитектурно-независимая иерархия$HOME/src
Локальный исходный кодПри выполнении configure
, необходимо определить локальную иерархию для установки путем определения $HOME
как префикс для значений по умолчанию установки.
./configure --prefix=$HOME
Теперь, когда make && make install
выполняются, скомпилированные двоичные файлы, пакеты, страницы справочника, и библиотеки будут установлены в Ваш $HOME
локальная иерархия. Если Вы вручную не создали a $HOME
локальная иерархия, make install
создаст каталоги, необходимые пакету программного обеспечения.
После того, как установленный в $HOME/bin
, можно или добавить $HOME/bin
к Вашему $PATH
или назовите двоичный файл с помощью абсолюта $PATH
. Некоторые дистрибутивы будут включать $HOME/bin
в Ваш $PATH
по умолчанию. Можно протестировать это также echo $PATH
и наблюдение, если $HOME/bin
есть ли или вставляет двоичный файл $HOME/bin
и выполнение which binaryname
. Если это возвращается с $HOME/bin/binaryname
, затем это находится в Вашем $PATH по умолчанию.
Как уже упоминалось , / usr / local
, по сути, является префиксом для программного обеспечения, установленного системным администратором, а / usr
должно быть используется для программного обеспечения, устанавливаемого из пакетов дистрибутива.
Идея заключается в том, чтобы избежать конфликтов с распределенным программным обеспечением (например, rpm
и deb
] пакетами) и дать администратору полную власть над «локальным» префиксом.
Это означает, что администратор может устанавливать скомпилированное программное обеспечение, продолжая использовать такой дистрибутив, как debian.
Из FHS
Программное обеспечение, размещенное в / или / usr, может быть перезаписано при обновлении системы (хотя мы рекомендуем, чтобы в этих обстоятельствах дистрибутивы не перезаписывали данные в / etc). По этой причине локальное программное обеспечение нельзя размещать за пределами / usr / local без уважительной причины.
При установке пользовательского программного обеспечения пользователь предлагает использовать $ HOME
в качестве префикса, поскольку это гарантирует, что у вас есть права на запись. Лично я считаю использование $ HOME / .local
более элегантным решением, поскольку оно позволяет избежать загромождения вашего (надеюсь) красивого и аккуратного домашнего каталога!
$ HOME / .local / share
уже используется в спецификации freedesktop.org XDG Base Directory , поэтому нетрудно представить себе добавление $ HOME /. local / bin
в ваш $ PATH
и создайте $ HOME / .local / lib
и т. д., пока вы на нем.
Если вы действительно не хотите, чтобы ваш префикс был скрытым каталогом, вы также можете легко создать на него символическую ссылку, e.g:
ln -s .local ~/local
Стоит отметить, что .config
(а не .local / etc
) является значением по умолчанию для $ XDG_CONFIG_HOME
, используемого для пользовательские файлы конфигурации. Я также должен отметить, что, к сожалению, большая часть программного обеспечения игнорирует XDG и создает файлы конфигурации где угодно (обычно в корне $ HOME
). Также обратите внимание, что $ XDG_CONFIG_HOME
может быть отключен, если требуется значение по умолчанию $ HOME / .config
.
Как ни странно, нет каталога, зарезервированного для файлов конфигурации по умолчанию для дистрибутива, поэтому невозможно узнать, был ли файл в / etc
предоставлен дистрибутивом или отредактирован системным администратором.
Похоже на /usr/local/bin
согласно интернет-сайту Wikitechy .
Информация о /usr/bin
из Стандарта иерархии файловой системы , они определяют папку как основной каталог исполняемых команд в системе.
Дополнительная информация между /usr/bin
и /usr/local/bin
из Wikitechy:
/usr/bin
— это расположение исполняемых файлов ОС, которые используются обычными пользователями. Например, обычно это не обязательные для основной операционной системы файлы или файлы, к которым обращается пользователь root, но могут быть.
/usr/local/bin
— это место для всех добавленных -исполняемых файлов, которые вы добавляете в систему для использования всеми пользователями в качестве общих системных файлов, но не являются официальными файлами, поддерживаемыми ОС.
В общем, /usr/bin
— это двоичные файлы, поставляемые операционной системой. /usr/local/bin
— это место, где пользователь загрузил двоичные файлы.
В спецификации базового каталога XDG версии 0.8 указано, что локальные исполняемые файлы должны быть помещены в~/.local/bin:
User-specific executable files may be stored in $HOME/.local/bin. Distributions should ensure this directory shows up in the UNIX $PATH environment variable, at an appropriate place.
Если ваш дистрибутив соответствует спецификации, вам не нужно «явно включать путь». Этот предыдущий вопрос пытается выяснить, какие дистрибутивы делают это.
$HOME
. Это наводняет Ваш корневой каталог многочисленными каталогами, которыми Вы не интересуетесь вообще. Кто хочет иметьman
,lib
, и т.д. в размещают dir? Я создал бы иерархию ниже$HOME/bin
или$HOME/local
. Это добавляет только один подкаталог к Вашему домашнему dir, вместо десять.PATH
может легко быть адаптирован для включения$HOME/bin/bin
или$HOME/local/bin
. – Marco 03.05.2012, 03:43$HOME/.local/share
(Версия 0.7, 24-го ноября 2010). – Piotr Dobrogost 04.11.2015, 00:06