Скрипт Batch - Переменные
Здравствуйте, будущие программисты! Сегодня мы погружаемся в захватывающий мир переменных скриптов Batch. Как ваш доброжелательный сосед-компьютерный учитель, я здесь, чтобы направить вас в этом путешествии, шаг за шагом. Не волнуйтесь, если вы никогда раньше не программировали – мы начнем с самого начала и будем подниматься вверх. Так что возьмите кружку вашего любимого напитка и давайте начнем!
Что такое переменные?
Прежде чем мы перейдем к конкретике переменных скриптов Batch, давайте поймем, что такое переменные в общем. Представьте переменные как контейнеры, которые хранят информацию. Точно так же, как вы можете использовать коробку для хранения своих любимых игрушек, мы используем переменные для хранения данных в наших программах.
Аргументы командной строки
Давайте начнем с чего-то интересного – аргументов командной строки! Это как маленькие послания, которые мы можем отправить нашему скрипту Batch при его выполнении.
Пример 1: Привет, Имя!
@echo off
echo Привет, %1!
Сохраните это как greet.bat
и запустите так: greet.bat Иван
Что происходит здесь? %1
в нашем скрипте заменяется первым аргументом, который мы предоставляем (в этом случае, "Иван"). Таким образом, скрипт будет говорить "Привет, Иван!"
Пример 2: Множественные аргументы
@echo off
echo Первый аргумент: %1
echo Второй аргумент: %2
echo Третий аргумент: %3
Сохраните это как args.bat
и запустите так: args.batapple banana cherry
Этот скрипт будет отображать:
Первый аргумент: apple
Второй аргумент: banana
Третий аргумент: cherry
Каждый %n
(где n – это номер) представляет аргумент в том порядке, в котором они предоставлены.
Команда set
Команда set
– это наша волшебная палочка для создания переменных в скриптах Batch. Давайте посмотрим, как она работает!
Пример 3: Создание простой переменной
@echo off
set message=Привет, мир!
echo %message%
Когда вы запустите этот скрипт, он будет отображать "Привет, мир!". Команда set
создает переменную с именем message
и присваивает ей значение "Привет, мир!". Мы затем используем %message%
, чтобы отображать ее содержимое.
Пример 4: Ввод пользователя
@echo off
set /p name=Какое ваше имя?
echo Приятно познакомиться, %name%!
Флаг /p
с set
позволяет нам запросить ввод у пользователя. Этот скрипт спрашивает имя пользователя и затем здоровается с ним.
Работа с числовыми значениями
Скрипты Batch могут также работать с числами! Давайте рассмотрим некоторые математические операции.
Пример 5: Основная арифметика
@echo off
set /a result=5+3
echo 5 + 3 = %result%
set /a result=10-4
echo 10 - 4 = %result%
set /a result=6*2
echo 6 * 2 = %result%
set /a result=15/3
echo 15 / 3 = %result%
Флаг /a
говорит set
, что мы работаем с арифметикой. Этот скрипт демонстрирует сложение, вычитание, умножение и деление.
Пример 6: Более сложные вычисления
@echo off
set /a result=(10+5)*2
echo (10 + 5) * 2 = %result%
set /a result=20%%3
echo 20 %% 3 = %result%
Здесь мы используем скобки для порядка операций и %%
для остатка после деления.
Локальные vs глобальные переменные
В скриптах Batch переменные обычно глобальные, что означает, что они доступны на протяжении всего скрипта. Однако мы можем создавать локальные переменные внутри блоков кода.
Пример 7: Глобальные и локальные переменные
@echo off
set global_var=Я глобальный!
setlocal
set local_var=Я локальный!
echo Внутри блока: %local_var%
echo Глобальная переменная: %global_var%
endlocal
echo За пределами блока: %local_var%
echo Глобальная переменная: %global_var%
Этот скрипт демонстрирует, как локальные переменные доступны только внутри своего блока (между setlocal
и endlocal
), в то время как глобальные переменные могут быть доступны везде.
Работа с переменными окружения
Переменные окружения – это особые переменные, которые Windows использует для хранения системной информации.
Пример 8: Отображение переменных окружения
@echo off
echo Ваше имя пользователя: %USERNAME%
echo Ваш домашний каталог: %USERPROFILE%
echo Текущая дата: %DATE%
echo Текущее время: %TIME%
Этот скрипт отображает некоторые.common переменные окружения. Windows предоставляет нам множество таких переменных для использования.
Пример 9: Создание пользовательских переменных окружения
@echo off
setx MY_CUSTOM_VAR "Привет из окружения!"
echo %MY_CUSTOM_VAR%
Команда setx
создает постоянную переменную окружения. Замечание: вам может потребоваться открыть новый командный ряд, чтобы увидеть изменения.
Заключение
Поздравления! Вы только что сделали свои первые шаги в мир переменных скриптов Batch. Помните, что практика делает perfect, так что не бойтесь экспериментировать с этими примерами и создавать свои собственные скрипты.
Вот quick таблица справки команд, которые мы выучили:
Команда | Описание |
---|---|
%n |
Доступ к аргументам командной строки |
set |
Создание или изменение переменных |
set /p |
Создание переменных с вводом пользователя |
set /a |
Выполнение арифметических операций |
setlocal |
Начало блока локальных переменных |
endlocal |
Окончание блока локальных переменных |
setx |
Создание переменных окружения |
Счастливого программирования и пусть ваши переменные всегда будут хорошо определены!
Credits: Image by storyset