PracticU

Переменные среды в CMD - Windows 10

Без субтитровС субтитрами
PracticU › Курс техников Windows - Поддержка пользователей - Help Desk › Переменные среды в CMD - Windows 10
Словарь терминов:
переменная - Именованное место в памяти, где хранится значение, которое может меняться во время работы программы.
CMD - Классическая командная строка Windows (Command Prompt) для запуска команд и программ в текстовом интерфейсе.
процесс - Запущенный в памяти экземпляр программы со своим кодом, данными и выделенными ресурсами.
папка - Контейнер в файловой системе для организации файлов и других папок.
локальный - Относящийся к самому компьютеру, а не к сети или удалённой системе.
программа - Набор инструкций, которые компьютер выполняет для решения определённой задачи.
скрипт - Файл с последовательностью команд, которые выполняет интерпретатор, обычно для автоматизации задач.
путь - Строка, описывающая расположение файла или папки в файловой системе, либо адрес ресурса внутри сайта.

Переменные среды в CMD - Windows 10
Разбираем переменные среды в CMD: как посмотреть их командой set, как подставить значение в команду и как сделать переменную постоянной.
Основные шаги
1. Просмотр и подстановка: set показывает все переменные текущего процесса. Значение подставляется в команду в виде %имя%, например echo %COMPUTERNAME%.
2. Папки пользователя: %USERPROFILE% - домашняя папка, %APPDATA% - настройки, которые переходят вместе с пользователем между компьютерами, а %LOCALAPPDATA% - локальные настройки, которые не переходят. Папка %TEMP% предназначена для временных файлов.
3. Общие папки: %PROGRAMDATA% хранит настройки программ для всех пользователей, %PROGRAMFILES% указывает, где стоят программы, а %PUBLIC% - общая папка, куда все пользователи компьютера могут класть файлы.
4. Сведения о системе: %COMPUTERNAME%, %USERNAME%, %PROCESSOR_ARCHITECTURE% и %SYSTEMDRIVE% подходят для скриптов, которым нужно понять, на каком компьютере они запущены.
5. PATH: список папок, в которых Windows ищет программы. Если программы нет в текущей папке, система проверяет папки из PATH, поэтому свою папку можно добавить туда и запускать программы без полного пути. PATHEXT задает окончания файлов, которые пробуются при поиске, например .exe и .bat.
6. Постоянство: переменная, заданная командой set, живет только в текущем окне. Чтобы она сохранялась, добавляем ее в Advanced Environment Variables в свойствах системы. Переменная пользователя с тем же именем перекрывает системную.
Обратите внимание
%PUBLIC% доступна всем пользователям компьютера, а содержимое профиля пользователя видит только его владелец. Поэтому для обмена файлами между пользователями используют общую папку.
Теперь вы знаете, где программы хранят свои настройки и как задать переменную, которую увидят новые программы.
Следующий урок курса: Переменные среды в PowerShell - Windows 10

Содержание лекции: Переменные среды в CMD - Windows 10

  1. 00:00

    Переменные среды процесса и команда set

  2. 01:17

    AppData: настройки пользователя и роуминг

  3. 02:23

    ComputerName и переменные для скриптов

  4. 03:18

    Подстановка значений через %переменная%

  5. 03:56

    HomeDrive и HomePath: домашняя папка

  6. 05:26

    Переменная Path и запуск программ

  7. 07:31

    PATHEXT: расширения исполняемых файлов

  8. 08:55

    ProgramData и ProgramFiles для установки

Расшифровка лекции: Переменные среды в CMD - Windows 10

Полный текст первых минут лекции «Переменные среды в CMD - Windows 10» из видеокурса PracticU – субтитры с временной меткой для каждого абзаца. Так можно прочитать и найти нужные темы ещё до начала обучения.

  1. 00:03

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

  2. 00:24

    Где папка пользователя находится, его домашняя папка, его профиль. Это существует и в Linux, и в Windows, и это существует еще там 79-го года.

  3. 00:33

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

  4. 00:50

    Давайте я вам покажу, как я открыл этот CMD. Я его просто написал в командную строку и команду set. И вот Set показывает мне все переменные среды, которые есть для моего процесса по умолчанию в Windows.

  5. 01:06

    Мы видим, например, переменную среды All Users Profile, то есть папку, в которой можно сохранить настройки для всех юзеров. А AppData это папка, в которой я могу сохранять настройки для какой-то программы, для какого-то приложения.

  6. 01:24

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

  7. 01:47

    Это называется Application Data, который роуминг. Видите, там в конце написано роуминг, значит они переходящие между компьютерами с моим юзернеймом.

  8. 01:57

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

  9. 02:09

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

  10. 02:22

    Например, эта папка находится в моем профиле, меня зовут Admin. И в C-Users Admin есть папка для всех настроек.

  11. 02:29

    Есть настройки Roaming, есть настройки, которые локальные и не Roaming. Я вам их покажу немножко попозже. Давайте перейдем к Computer Name. Это вот одна из самых главных перемен, чтобы программа, процесс знали, в каком компьютере его запустили, где он сейчас бежит.

  12. 02:47

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

  13. 02:56

    И могу проверить, на каком компьютере запущен этот мой сценарий. Я вам покажу, как это все проверяется. Мы пока что пытаемся понять, какие переменные среды вообще существуют, что в них сохранено и какие они.

  14. 03:10

    Давайте посмотрим еще, что у нас здесь еще интересного есть. Есть у нас еще разные переменные. Давайте я вам покажу, что мы можем сделать «EcoAAA» и написать на экране «AAA».

  15. 03:21

    Просто «Eco» — это написать на экране. А вместо «AAA» я могу вставить процент, имя переменной, еще раз, процент, имя переменной, я его копирую, чтобы не ошибиться, и процент в конце.

  16. 03:36

    Вот процент, имя переменной, процент подменяет в командной строке значение на то значение, которое внутри этой переменной.

  17. 03:47

    И я с процент компьютерный процент могу писать разные команды, сценарии и делать свои приложения. Home Drive это где находится мой профиль пользователя.

  18. 04:00

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

  19. 04:15

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

  20. 04:31

    Это постоянные файлы, не временные файлы. Временные файлы мы скоро посмотрим, где сохраняются. Так, что дальше у нас здесь есть? LocalAppData.

  21. 04:40

    LocalAppData это тоже папка с настройками, видите, как та АПП. Только та app data, она roaming, то есть она переходит с моим пользователем между разными моими компьютерами, а local app data не переходит, то есть это локальные настройки для моего пользователя для конкретного компьютера.

  22. 05:00

    И есть система автоматизации, которая синхронизирует эту папку roaming, об этом мы говорим про серверах. Кстати, через какой сервер я прошел авторизацию, это logon server, вот его имя, в этом случае это мой компьютер, количеством процессоров на моем компьютере.

  23. 05:17

    Папка OneDrive - это Dropbox Google Drive Microsoft, где она находится, этот OneDrive для синхронизации. OS - я нахожусь на Windows или на Linux.

  24. 05:29

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

  25. 05:50

    папке его нет, то я могу написать calc.exe и он его найдет благодаря той переменной path. Еще раз, видите, в этой папке, в которой я сейчас нахожусь, я сделал dir, калькулятора нет.

  26. 06:05

    Но если я напишу calc.exe, он запустится, то есть Windows система знает, где его найти. И если я хочу, чтобы другие приложения запускались С любого места, так же как я сейчас запустил калькулятор, мне надо в переменную path добавить мою папку.

  27. 06:24

    Потому что эта переменная указывает где искать. Вот ищи вот в этой папке cwindowssystem32. Если там нет, иди в папку cwindows. То есть видите, точка запятая разделяет между папками.

  28. 06:35

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

  29. 06:44

    То есть если программы не существуют в текущем каталоге, в текущей папке, он идет в переменную path, смотрит на все папки там и ищет ту программу, которую я хотел в тех папках.

  30. 06:55

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

  31. 07:14

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

  32. 07:31

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

  33. 07:41

    То есть, когда я напишу, например, там calc, чтобы он знал имя файла, потому что имя файла это не calc. Имя файла это calc.exe, и он сам берет вот с этой переменной pathExtensions и добавляет.

  34. 07:55

    Он сначала пробует, например, calc.com, если у него не получается calc.exe, calc.bat. Вот какие окончания файлов попробовать, в каком порядке.

  35. 08:07

    Далее, следующая важная переменная, процессор архитектур, архитектура процессора. Это нам указывает, какой у нас процессор 64-битный или не 64-битный.

  36. 08:20

    Сегодня уже все процессоры 64-битные, но когда-то это имело очень большую важность, эта переменная. Ее часто использовали в разных скриптах. Сегодня уже почти все компьютеры 64-битные, но все равно это одна из важных переменных, которые пользовались.

  37. 08:37

    Вот этой переменной я никогда в жизни не пользовался. Имя процессора, какое у него поколение, какая у него версия, ревижн. Так, это переменные.

  38. 08:46

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

  39. 09:00

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

  40. 09:14

    Давайте посмотрим, что здесь есть в программ Data. Мы увидим, что здесь разные программы сохраняют свои настройки, свою информацию. Ну, не знаю, давайте зайдем в VMware, увидим, что VMware Tools, VMware хранит здесь свои логи.

  41. 09:32

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

  42. 09:42

    Заметьте, в appdata это настройки для конкретного пользователя. В programdata это настройки на уровне всей программы для всех пользователей, общие настройки для всех пользователей.

  43. 09:54

    И здесь указано, где они находятся. Конечно, я могу сохранить в любой папке все, что я хочу, но есть стандарт. И здесь по стандарту написано, в переменной Program Files есть указатель, где установлены все программы.

  44. 10:07

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

  45. 10:19

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

Полный курс: Курс техников Windows

Предыдущая лекция: Шифрование системного диска C в Windows 10 - Bitlocker и TPM

Следующая лекция: Переменные среды в PowerShell - Windows 10

Похожие лекции из других курсов

  • Переменные среды в PowerShell - Windows 10
  • переменные - C# variables
  • OpenSSL CMD - IIS Windows 10
  • Как открыть порт на linux Port-Forwarding и firewall-cmd

Другие курсы этого направления

  • Курс системных администраторов - MCSE / MCSA / MCTIP
  • Системный администратор - Учимся за 3 минуты
  • Собеседование - Системный администратор