Изучаем переменные среды в windows 10

Динамические переменные среды

В отличие от обычных переменных, динамические переменные среды предоставляются CMD, а не системой. Вы не можете изменять значения этих переменных, и они расширяются до различных дискретных значений при запросе. Мы обычно используем эти переменные для пакетной обработки, и они не хранятся в среде. Даже команда «SET» не покажет эти переменные. Некоторые из динамических переменных среды:

Некоторые из динамических переменных среды:

  • %CD%: ввод этой команды даст вам текущий каталог, в котором вы работаете.
  • %DATE%: эта переменная будет отображать текущую дату в соответствии с настройками формата даты.
  • %TIME%: аналогично, оно показывает текущее время в соответствии с настройками формата времени.
  • %RANDOM%: эта переменная печатает случайное число .
  • %ERRORLEVEL%: определяет уровень ошибки, установленный последней выполняемой командой.
  • %CMDEXTVERSION%: эта переменная распространяется на версию расширений командной строки.

Это было в значительной степени о системных и пользовательских переменных среды в Windows. Windows имеет гораздо больше переменных — не забудьте проверить их с помощью команды «SET».

Глобальное определение переменных

Для того, чтобы определить эти переменные централизованно, в Calculate существует каталог . В нём находится ряд файлов, например, «00basic», «05gcc» и так далее, в которых определяются переменные, необходимые программам, указанным в названии файлов.

Например, при установке gcc ebuild создает файл /etc/env.d/05gcc, содержащий следующие определения переменных:

PATH="/usr/i686-pc-linux-gnu/gcc-bin/3.2"
ROOTPATH="/usr/i686-pc-linux-gnu/gcc-bin/3.2"
MANPATH="/usr/share/gcc-data/i686-pc-linux-gnu/3.2/man"
INFOPATH="/usr/share/gcc-data/i686-pc-linux-gnu/3.2/info"
CC="gcc"
CXX="g++"
LDPATH="/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.3"

В других дистрибутивах вам предлагается изменять или добавлять определения переменных среды в или где-нибудь еще

Calculate, с другой стороны, облегчает вам поддержку и управление переменными среды, избавляя от необходимости уделять внимание многочисленным файлам, содержащим определения переменных

Например, когда обновляется gcc, также без малейшего участия пользователя обновляется и /etc/env.d/05gcc.

От этого выигрывает не только Portage, но и вы, пользователь. Иногда от вас может потребоваться глобальная установка какой-нибудь переменной. Возьмем, к примеру, переменную . Вместо того, чтобы возиться с , теперь можно просто создать файл 99local и добавить нужные определения туда:

/etc/env.d/99local

http_proxy="proxy.server.com:8080"

Используя один и тот же файл для всех своих переменных, вы можете быстро увидеть все определенные вами переменные вместе.

Сценарий env-update

Переменная определяется в нескольких файлах в . Нет, нет это не ошибка: при запуске различные определения объединяются перед обновлением переменных среды, позволяя пакетам (или пользователям) добавлять собственные значения переменных, не влияя на уже существующие.

Сценарий объединяет значения переменных из файлов, находящихся в , в алфавитном порядке. Имена файлов должны начинаться с двух десятичных цифр. Порядок обновления, используемый :

          00basic        99kde-env       99local
      +-------------+----------------+-------------+
PATH="/bin:/usr/bin:/usr/kde/3.2/bin:/usr/local/bin"

Объединение выполняется не всегда, а только для следующих переменных: KDEDIRS, PATH, CLASSPATH, LDPATH, MANPATH, INFODIR, INFOPATH, ROOTPATH, CONFIG_PROTECT, CONFIG_PROTECT_MASK, PRELINK_PATH и PRELINK_PATH_MASK. Для всех остальных переменных используется значение, определенное в последнем из файлов (по алфавиту в каталоге ).

При запуске сценария env-update создаются все переменные среды, и помещаются в (используемый файлом ). Кроме того, на основе значения создается . После этого запускается , чтобы вновь создать файла , используемый динамическим компоновщиком.

Если вы хотите, чтобы результаты работы вступили в силу немедленно, для обновления среды выполните следующую команду:

env-update && source /etc/profile

Примечание: Эта команда обновляет переменные только в текущем терминале, в новых консолях и их потомках. То есть, если вы работаете в X11, потребуется или набирать в каждом открываемом терминале, или перезапустить X, чтобы все новые терминалы обращались к новым переменным. Если вы используете диспетчер входа в систему, станьте пользователем с правами root и наберите . Если нет, вам придется выйти и снова войти в систему, чтобы X порождала потомков, использующих новые значения переменных.

Переменные среды и переменные оболочки

Переменные имеют следующий формат:

  • Имена переменных чувствительны к регистру. По соглашению, переменные среды должны иметь имена в ВЕРХНЕМ РЕГИСТРЕ.
  • При присвоении переменной нескольких значений они должны быть разделены двоеточием символ.
  • Вокруг символа равенства нет пробела.

Переменные можно разделить на две основные категории: переменные среды и переменные оболочки.

Переменные среды — это переменные, доступные для всей системы и наследуемые всеми порожденными дочерними процессами и оболочками.

Переменные оболочки — это переменные, которые применяются только к текущему экземпляру оболочки. Каждая оболочка, такая как и , имеет собственный набор внутренних переменных оболочки.

Доступно несколько команд, которые позволяют вам перечислять и устанавливать переменные среды в Linux:

  • — команда позволяет запускать другую программу в настраиваемой среде без изменения текущей. При использовании без аргумента он распечатает список текущих переменных среды.
  • — команда печатает все или указанные переменные среды.
  • — Команда устанавливает или отменяет переменные оболочки. При использовании без аргумента он распечатает список всех переменных, включая переменные среды и оболочки, а также функции оболочки.
  • — команда удаляет переменные оболочки и среды.
  • — команда устанавливает переменные среды.

Переменные среды Windows, что это и как ими пользоваться?

Помимо того, что такие переменные имеют короткие имена и освобождают вас от необходимости знать многие технические особенности Windows. Их очень просто использовать. Например, если вы часто используете в путях имя пользователя, то все что вам нужно это использовать переменную %USERNAME%. Она уникальна для каждого пользователя, так что ваши программы и скрипты не потребуют постоянной настройки под каждого пользователя. Да и порой имена у пользователей бывают не очень простыми, например, содержащими цифро-буквенные комбинации. 

Примечание: Регистр в переменных не имеет значения,

т.е. %USERNAME% = %uSErnAME%.

Если приводить другой пример, то это, бесспорно, часто используемые папки Windows. Каждая учетная запись пользователя имеет собственную коллекцию папок, таких как: (Мои) Документы, Избранное, Рабочий стол и так далее. В Windows XP эти папки находятся в каталоге «C:\Documents and Settings\{пользователь}\». В Windows 7 они находятся в «C:\Users\{пользователь}\». А так же существуют 2003 Server, 2008 Server, Vista, Win 8 и другие. Да и систему можно установить не на диск «C:», а, например, на диск «D:». Запоминать такие пути, а тем более набирать — дело не самое приятное. В таком случае проще всего использовать специальную переменную %USERPROFILE%, которая есть во всех версиях Windows, начиная с XP. Набирать ее намного проще, да и запомнить тоже.

Рассмотренные примеры — это только лишь часть множества переменных окружения.

Примечание: Стоит так же отметить, что достаточно часто такие переменные используются при запуске программ в командной строке. 

Переменные среды окружения Windows 7/Vista/8

Для Windows Vista/7/8 список таких переменных не очень сильно изменился, но изменились некоторые пути.

Переменная Значение (может отличаться)
%ALLUSERSPROFILE% C:\ProgramData
%APPDATA% C:\Users\(пользователь}\AppData\Roaming
%CommonProgramFiles% C:\Program Files\Common Files
%COMPUTERNAME% {имя компьютера}
%COMSPEC% C:\Windows\System32\cmd.exe
%HOMEDRIVE% C: или иногда D:
%HOMEPATH% \Users\{пользователь}
%LOCALAPPDATA% C:\Users\{пользователь}\AppData\Local
%PATH% Много различных путей, перечисленных через «;».Включает C:\Windows\System32\;C:\Windows\
%PATHEXT% .COM; .EXE; .BAT; .CMD; .VBS; .VBE;.JS ; .WSF; .WSH; .MSC
%ProgramData% C:\ProgramData
%PROGRAMFILES% Директория с установленными программами, обычно C:\Program Files
%ProgramFiles(x86)% В 64-битных системах есть директория для установки 32-битных приложений. Обычно C:\Program Files (x86)
%Public% C:\Users\Public
%SYSTEMDRIVE% Диск, содержащий Windows, обычно C:
%SYSTEMROOT% Директория Windows, обычно C:\Windows
%TEMP% и %TMP% C:\Users\{пользователь}\AppData\Local\Temp
%USERNAME% {пользователь}
%USERPROFILE% C:\Users\{пользователь}
%WINDIR% Обычно C:\Windows

Рубрики:

  • система
  • стандартное
  • Как запустить программу с ограниченными правами в Windows?
  • Три полезных оператора Google

Настройка переменных окружения во время входа

Мы уже упоминали, что многие программы используют переменные окружения для определения специфики своей работы. Мы не хотим задавать важные переменные каждый раз при запуске нового сеанса оболочки, и мы уже видели, сколько переменных уже задано при входе. Так как же мы можем создавать и определять переменные автоматически?

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

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

Одно из различий между сеансами заключается в том, что оболочка запускается в рамках сеанса входа или без входа.

Оболочка входа — это сеанс оболочки, начинающийся с аутентификации пользователя. Если вы выполняете вход в сеанс терминала или через SSH с аутентификацией, ваш сеанс оболочки будет настроен в виде оболочки со входом.

Если вы запускаете новый сеанс оболочки внутри аутентифицированного сеанса, как мы уже делали, вызывая команду из терминала, запускается сеанс оболочки без входа. При запуске вашей дочерней оболочки вам не потребовалось вводить данные для аутентификации.

Еще одним отличием, которое можно отметить, является интерактивный или неинтерактивный характер сеанса оболочки.

Интерактивный сеанс оболочки — это сеанс оболочки, прикрепленный к терминалу. Неинтерактивный сеанс оболочки не прикреплен к сеансу терминала.

Таким образом, каждый сеанс оболочки классифицируется либо как сеанс входа или без входа, либо как интерактивный или неинтерактивный.

Обычный сеанс, который начинается с SSH, как правило, представляет собой интерактивный сеанс входа. Скрипт, запускаемый из командной строки, обычно запускается в неинтерактивном сеансе без входа. Сеанс терминала может быть иметь любое сочетание этих двух параметров.

То, относится ли сеанс оболочки к оболочке входа или без входа, определяет то, какие файлы будут считываться при инициализации сеанса оболочки.

Сеанс, запускаемый в виде сеанса входа, будет считывать данные конфигурации сначала из файла . Затем он будет искать первый файл конфигурации сеанса входа в домашнем каталоге пользователя, чтобы получить данные конфигурации для конкретного пользователя.

Сеанс считывает первый из файлов , и , который ему удается найти, и не считывает остальные файлы.

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

Неинтерактивные оболочки считывают значение переменной окружения и указанный в нем файл для определения нового окружения.

Реализация переменных окружения

Как вы можете видеть, существует множество разных файлов, которые часто требуется просмотреть при определении наших настроек.

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

К счастью, большинство дистрибутивов Linux позволяют настраивать файлы конфигурации входа для использования файлов конфигурации без входа. Это означает, что вы можете определить переменные окружения, которые вы хотите использовать в обоих случаях, только в файлах конфигурации без входа. Затем эти файлы будут считываться в обоих сценариях.

Чаще всего мы будем настраивать переменные окружения для конкретного пользователя, и наши настройки, как правило, будут доступны в оболочках как со входом, так и без входа. Это означает, что лучше всего использовать для определения этих переменных файл .

Откройте этот файл:

Скорее всего, он уже содержит довольно большое количество данных. Большинство определений здесь предназначены для настройки опций bash, которые не имеют отношения к переменным окружения. Вы можете задать переменные окружения таким же образом, как вы делали это в командной строке:

Любые новые переменные окружения можно добавить в любое место файла при условии, что они не помещаются внутри другой команды или цикла. Сохраните и закройте файл. В следующий раз при запуске сеанса оболочки ваше объявление переменной окружения будет считываться и передаваться в среду оболочки. Вы можете заставить ваш текущий сеанс считать файл прямо сейчас, введя следующую команду:

Если вам потребуется задать общесистемные переменные, вы можете рассмотреть возможность их добавления в файлы , или .

Список переменных

Полный список переменных среды пользователь может получить с помощью командной строки.

Вызываем меню «Пуск» и используем поисковое поле в нижней его части. Начинаем набирать «командная», пока в области показанной цифрой «2» не высветится совпадение. Щелкаем правой кнопкой мышки по строке с названием программы открывая выпадающий список действий. Выбираем «Запуск от имени администратора».

Для вывода информации в окне программы достаточно ввести команду «set». Чтобы получить данные в удобном для чтения формате сохраним их в текстовый файл. Набираем «set > %homepath%\desktop\setlist.txt» и жмем на физической клавиатуре клавишу Enter. В результате выполнения команды на рабочем столе появится текстовый файл с именем «setlist.txt», содержащий список всех переменных среды окружения.

Открыть его для изучения можно в обычном Блокноте, входящем в дистрибутив всех операционных систем Windows. На примере верхней строки разберем полученной содержимое. Желтым маркером в ней подсвечена перемененная окружения, а зеленым – абсолютный путь. В данном случае «%alluserprofile%» ведет в папку общих настроек установленного программного обеспечения «C:\ProgramData».

Как очистить значение переменной среды в Windows (из командной строки)

Если вы хотите удалить значение переменной среды (сохранив ее имя), вы не можете сделать это с помощью мыши и клавиатуры из окна переменных среды . Если вы выберете переменную и нажмете «Изменить», вы можете удалить значение, но не можете нажать «ОК», так как эта кнопка становится серой. Поэтому вы не можете сохранить свои изменения.

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

Далее давайте посмотрим, как удалить переменную среды.

Изменение системной переменной PATH в операционной системе Microsoft Windows

Чтобы изменить системную переменную PATH, например в Windows 7, нужно открыть Панель управления -> Система -> Дополнительные параметры системы. В этом окне нужно выбрать Переменные среды, после чего откроется окно, в нижней части которого в списке «Системные переменные» нужно найти интересующую нас переменную и нажать «Изменить». Открывается окно «Изменение системной переменной». В нем имеется поле «Значение переменной», в котором нужно сначала в конце поставить точку с запятой и после этого указать путь к каталогу, в котором будут храниться консольные утилиты. Далее нажимается «ОК». Наглядно все перечисленные действия показаны в видео:

Как сделать переменные окружения постоянными?

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

Чтобы установить постоянную переменную окружения для текущего пользователя, откройте файл .bashrc:

Для каждой переменной, которую вы хотите сделать постоянной, добавьте в конец файла строку, используя следующий синтаксис:

Сохраните и закройте файл. Изменения будут применены после перезапуска оболочки. Если вы хотите применить изменения во время текущего сеанса, то используйте команду :

Чтобы задать постоянные переменные окружения для всех пользователей, создайте .sh-файл в каталоге etcprofile.d:

Синтаксис добавления переменных в файл такой же, как и в случае с файлом .bashrc:

Сохраните и закройте файл. Изменения будут применены при следующем входе в систему.

Установка переменных

На системном уровне

Большинство дистрибутивов Linux советуют изменять или добавлять переменные окружения в или других местах. Имейте в виду, что сразу множество файлов могут содержать переменные окружения и переопределять их, вроде . По сути, любой скрипт может быть использован для этого, однако, по принятым в UNIX соглашениям, следует использовать для этого только определенные файлы.

  • используется модулем PAM-env. Он не привязан к командным оболочкам, поэтому скрипты или glob-выражения использовать здесь нельзя. Здесь можно указывать только пары . Подробнее смотрите и .
  • устанавливает переменные только при логине в командные оболочки. Он может запускать любые скрипты в оболочках, совместимых с Bourne shell.
  • Файлы настроек, специфичные для конкретных командных оболочек — глобальные файлы для вашей командной оболочки, инициализирует переменные и запускает скрипты. Например, или .

Ниже приведен пример скрипта, который позволяет добавлять каталог пользователя в . Чтобы это сделать, просто поместите код в один из системных файлов инициализации окружения ( или ):

# If user ID is greater than or equal to 1000 & if ~/bin exists and is a directory & if ~/bin is not already in your $PATH
# then export ~/bin to your $PATH.
if [[ $UID -ge 1000 && -d $HOME/bin && -z $(echo $PATH | grep -o $HOME/bin) ]]
then
    export PATH="${PATH}:$HOME/bin"
fi

На уровне пользователя

Вам не всегда нужно будет устанавливать переменные окружения на уровне системы. Например, вы можете добавить ваш каталог в , однако, не хотите, чтобы это затрагивало других пользователей системы. Переменные окружения пользователя можно устанавливать во многих других файлах:

  1. пользовательский аналог файла , который используется модулем PAM-env. Смотрите подробнее в и .
  2. Файлы инициализации командной оболочки, например или .

systemd может загружать переменные окружения из ~/.config/environment.d/*.conf, смотрите environment.d(5) и https://wiki.gnome.org/Initiatives/Wayland/SessionStart.

Например, чтобы добавить каталог в , поместите следующее в :

export PATH="${PATH}:/home/пользователь/bin"

Чтобы увидеть изменения перезайдите в командную оболочку, либо используйте команду source: .

Примечание:

  • Демон dbus и пользовательский экземпляр systemd не наследуют никакие переменные окружения из мест вроде . Это означает, что, например, активируемые через dbus программы вроде Gnome Files не будут использовать их по умолчанию. Смотрите .

Графические приложения

Чтобы установить переменные окружения для графических приложений, вы можете поместить ваши переменные в xinitrc или в xprofile если используется экранный менеджер, например:

~/.xinitrc
export PATH="${PATH}:${HOME}/scripts"
export GUIVAR=value

The factual accuracy of this article or section is disputed.

Приложения, работающие в Wayland, могут использовать , так как Wayland не использует Xorg-специфичные файлы:

~/.config/environment.d/envvars.conf
PATH=$PATH:$HOME/scripts
GUIVAR=value

Чтобы установить переменные окружения только для определённого приложения вместо целого сеанса, измените .desktop файл этого приложение. Смотрите .

Совет: поддерживает выполнение скриптов при входе и даже перед запуском Plasma, так что они могут быть использованы для установки переменных окружения. Смотрите .

На уровне сеанса

Иногда разумно установить переменную окружения только для текущего сеанса. Для этого вы можете создать в своем каталоге скрипт с нужными переменными, который можно будет запустить в любое время с помощью команды source, либо вводить команды для установки переменных окружения самостоятельно, используя команду export, например:

$ export PATH="${PATH}:/home/my_user/tmp/usr/bin"

Метод 2: Использование сценариев при запуске

Если описанный выше метод не решает проблему, вы можете создать сценарии, которые будут запускать при запуске, чтобы сопоставить диски и решить проблему. Мы предоставим сценарии как для командной строки, так и для Powershell. Вам необходимо иметь и то, и другое, поскольку сценарий cmd относится к сценарию Powershell..

Командная строка

Следуйте приведенным ниже инструкциям, чтобы создать сценарий для командной строки:

  1. Прежде всего, откройте Блокнот .
  2. Затем скопируйте и вставьте приведенный ниже сценарий в текстовый файл.
 PowerShell.  -Command "Set-ExecutionPolicy -Scope CurrentUser Unrestricted" >> "% TEMP%  StartupLog.txt" 2> & 1 PowerShell -File "% SystemDrive%  Scripts  MapDrives.ps1" >> "% TEMP%  StartupLog.txt"  2> & 1 
  1. Сохраните этот файл как cmd где угодно.

Powershell

Для сценария Powershell следуйте инструкциям ниже:

  1. Откройте Блокнот еще раз.
  2. Теперь скопируйте следующий сценарий и вставьте его во вновь созданный файл блокнота:
 $ i = 3 while ($ True) {$ error.clear () $ MappedDrives = Get-SmbMapping | где -property Status -Value Unavailable -EQ |  выберите LocalPath, RemotePath foreach ($ MappedDrive в $ MappedDrives) {попробуйте {New-SmbMapping -LocalPath $ MappedDrive.LocalPath -RemotePath $ MappedDrive.RemotePath -Persistent $ True} catch {Write-Host "Произошла ошибка сопоставления $ MappedDrive.RemotePath  to $ MappedDrive.LocalPath "}} $ i = $ i - 1 if ($ error.Count -eq 0 -Or $ i -eq 0) {break} Start-Sleep -Seconds 30} 

Сохраните этот файл как MapDrives . ps1

Важно, чтобы вы использовали предоставленное имя

Теперь, когда мы создали сценарии, вы можете использовать папку StartUp, чтобы ваши сетевые диски оставались подключенными. Это запустит сценарий при запуске, поэтому вам не придется беспокоиться об ошибке или о чем-то еще. Для этого следуйте инструкциям ниже:

  1. Открыть откройте проводник и перейдите по следующему пути: % ProgramData% Microsoft Windows Start Menu Programs StartUp
  2. Как только вы окажетесь в StartUp скопируйте созданный вами cmd-скрипт в эту папку.
  3. После этого перейдите на системный диск и создайте папку с именем Scripts .
  4. После создания папки вставьте туда скрипт Powershell.
  5. Наконец, перезагрузите систему, и вы сможете увидеть подключенные диски без каких-либо проблем.

Что такое переменные среды Windows

Environment variable или дополнительные контакты среды ОС Виндовс – это небольшие ссылки, по которым элементы системы переходят от одного инструмента к другому. Переменная внутренних каталогов позволяет быстро зайти в нужную папку, не используя при этом полный (стандартный) путь к документу. Команда активируется с помощью:

  • Командной строки (Command Line), открывается с помощью кнопки «Shift», если одновременно нажать по пустому месту в папке и в открывшемся контекстном меню кликнуть по строке «Открыть окно PowerShell здесь»;
  • специального диалогового окна «Выполнить» (запускается после нажатия горячих клавиш «Win» и «I»);
  • адресного поля окна «Проводника».

Контакты окружения часто содержат информационные данные о ПК (стационарном или переносном) и пользователе, который в текущий момент пользуется персональным устройством.

Переменные окружения и переменные оболочки

Переменные можно разделить на две основные категории:

   Переменные окружения (или «переменные среды») — это переменные, доступные в масштабах всей системы и наследуемые всеми дочерними процессами и оболочками.

   Переменные оболочки — это переменные, которые применяются только к текущему экземпляру оболочки. Каждая оболочка, например, bash или , имеет свой собственный набор внутренних переменных.

Все переменные имеют следующий формат:

При этом также следует придерживаться определенных правил:

   Имена переменных чувствительны к регистру, поэтому переменные окружения должны иметь имена в верхнем регистре.

   При присвоении переменной нескольких значений они должны быть разделены символом .

   Вокруг символа не должно быть пробелов.

Существует несколько команд, с помощью которых вы можете взаимодействовать с переменными окружения и оболочки:

   команда env — позволяет запускать другую программу в пользовательском окружении без изменения в текущем окружении. При использовании без аргумента выведет список переменных текущего окружения;

   команда printenv — выводит список всех переменных окружения (или какую-то отдельно заданную переменную);

   команда set — устанавливает переменные оболочки. При использовании без аргумента выведет список всех переменных, включая переменные окружения и переменные оболочки, а также функции оболочки;

   команда unset — удаляет переменные оболочки и переменные окружения;

   команда export — создает переменную окружения.

Поиск и вывод переменных окружения

Наиболее часто используемая команда для вывода переменных окружения — . Если команде в качестве аргумента передать имя переменной, то будет отображено значение только этой переменной. Если же вызвать без аргументов, то выведется построчный список всех переменных окружения.

Например, чтобы отобразить значение переменной , вы должны использовать команду:

В результате вы увидите путь к домашнему каталогу текущего пользователя:

Вы также можете передать команде сразу несколько аргументов, например:

Если вы запустите команду или без каких-либо аргументов, то они покажут список всех переменных окружения:

Ниже приведены некоторые из наиболее распространенных переменных окружения:

    — текущий пользователь.

    — текущая директория.

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

    — домашняя директория текущего пользователя.

    — путь к оболочке текущего пользователя (например, bash или zsh).

    — заданный по умолчанию редактор. Этот редактор будет вызываться в ответ на команду .

    — имя пользователя, используемое для входа в систему.

    — пути к каталогам, в которых будет производиться поиск вызываемых команд. При выполнении команды система будет проходить по данным каталогам в указанном порядке и выберет первый из них, в котором будет находиться исполняемый файл искомой команды.

    — текущие настройки языка и кодировки.

    — тип текущего эмулятора терминала.

    — место хранения почты текущего пользователя.

    — задает цвета, используемые для выделения объектов (например, различные типы файлов в выводе команды будут выделены разными цветами).

Наиболее распространенные переменные оболочки:

    — список задействованных параметров оболочки, разделенных двоеточием.

    — версия запущенной оболочки bash.

    — количество столбцов, которые используются для отображения выходных данных.

    — стек директорий, к которому можно применять команды и .

    — максимальное количество строк для файла истории команд.

    — количество строк из файла истории команд, которые можно хранить в памяти.

    — имя текущего хоста.

    — внутренний разделитель поля в командной строке (по умолчанию используется пробел).

    — определяет внешний вид строки приглашения ввода новых команд.

    — вторичная строка приглашения.

    — параметры оболочки, которые можно устанавливать с помощью команды .

    — идентификатор текущего пользователя.

Команды и выводят только переменные окружения. Если вы хотите получить список всех переменных, включая переменные (и функции) оболочки, то можете использовать команду :

Команда отобразит список всех переменных. Он довольно большой, поэтому я заранее перенаправил вывод в команду .

Чтобы найти все переменные, содержащие заданную строку, используйте команду :

Ниже представлен пример поиска переменных, в названии которых содержится строка :

Для отображения переменных оболочки также можно использовать команду . Например, чтобы вывести в терминал значение переменной , вы должны выполнить:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector