Я не настолько увлечен Linux, и у меня есть следующие сомнения после урока.
Я должен изменить bashrc
файл. Какие настройки содержатся в этом файле? Я думаю, что-то связано со средой оболочки bash, но я не уверен в этом.
Я должен вставить эту строку:
export PATH=$HOME/.local/bin:$HOME/.local/usr/bin:$PATH
Что именно делает эта линия?
Я думаю, что это export
утверждение используется для создания новой переменной, делающей ее доступной для другой программы.
Но что именно делает эта линия? Является ли PATH
имя переменной, которую я определяю? Что такое $HOME
?
Что означает :
символ между PATH=$HOME/.local/bin
и $HOME/.local/usr/bin
и $PATH
разделом в предыдущем выражении?
Что именно означает это выражение?
command-line
bash
environment-variables
bashrc
AndreaNobili
источник
источник
PATH
изменения уже внесены в~/.profile
файл, поэтому немного противоречиво делать подобные вещи в~/.bashrc
. Лучше ИМО, чтобы изменить код уже в~/.profile
случае необходимости. В настоящее время~/.profile
файл по умолчанию включает в себя эту строку:PATH="$HOME/bin:$HOME/.local/bin:$PATH"
~/.bashrc
,~/.profile
оно получено из диспетчера отображения, поэтому~/.profile
при запуске программ из графической среды доступны только переменные, заданные параметром . И это происходит рано, так что это должно быть хорошо для процессов автозапуска для сеанса.Ответы:
Напомним все, что упоминается в этом вопросе,
export
частьВ
export
линии означает , что переменный , что вы объявляете после того , как будет доступно для дочерних процессов. Другими словами, процессы смогут получить доступ к переменной, объявленной послеexport
ключевого слова, через среду оболочки. Итак, если вы сделали что-то подобное,export FOO="BAR"
а затем получили изменения в своей оболочке, вы можете набрать$FOO
и получитьBAR
.PATH
частьЛиния пути такая же, как вы указали: она объявляет переменную, которая названа
PATH
для среды оболочки. В среде bashPATH
специальное назначение - определить, где компьютер ищет программы. Это позволяет вводить пользовательские команды для сценариев, не вводя полный каталог. Обратите внимание, что PATH помечен для экспорта по умолчанию, поэтому эту строку не нужно переписывать. Это не больно, хотя.$HOME
ВPATH
переменнойВ начале пути, который назначен
PATH
переменной,$HOME
объявляется. Это означает, что компьютер будет в значительной степени захватывать сохраненное значениеHOME
и вставлять его перед остальной частью строки при чтении.:
Между обоими путями:
Эквивалентна запятой в предложениях. Он просто разделяет три каталога. Без этих трех каталогов консоль не будет распознавать команды, которые она получает. Эти три места - это три каталога, которые чаще всего используются для хранения скриптов / командных файлов и поэтому должны быть доступны для терминала без необходимости записывать полный путь к файлу.источник
PATH
Переменная позволяет Баш знать , где искать исполняемые программы, поэтому если у вас есть скрипт или какой - либо другой исполняемый файл$HOME/.local/bin
, измененияPATH
позволят вам набрать и запустить этот файл так же , как вы делаете сls
илиdf
.export
означает только, что этаPATH
переменная также доступна для других программ, которые вы запускаете из bash.Что касается
:
, это просто разделитель для каждого каталога. Это то же самое, что запятая в списке слов, не более того.источник