Скрипты это: Скрипт (script) – что это такое: язык сценариев программирования

В чем разница между скриптом и программой — Журнал «Код»

⚠️ Минутка матчасти! Эта статья создана для расширения кругозора и повышения разрешения в мире компьютерных технологий. В ней мало практической пользы кроме развития вашего интеллекта. 

Здесь мы говорим о двух типах компьютерных языков: условно говоря, языков скриптования (интерпретируемые языки) и языков программирования (компилируемые языки). Это деление — не самое верное и не самое полное с точки зрения опытных программистов, но статья рассчитана на тех, кто только начинает. 

Скриптовые, или интерпретируемые, языки

Обычно примеры кода в наших статьях работают по такому принципу: 

  1. Скопировал текст.
  2. Запустил в браузере.
  3. Получил результат.

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

Чтобы такие скрипты работали, нужна какая-то программа, которая будет выполнять команды скрипта, — их называют интерпретаторами. В нашем случае это браузер: Chrome, Safari, Firefox, Яндекс-браузер и т. д. Отсюда и название — интерпретируемые языки.

Пример скриптового языка, который вы уже знаете, — JavaScript. На скриншоте ниже он вписан внутрь веб-страницы. Сам код из одной строки прописан между тегами <script> и </script>: браузер будет рисовать страницу, в какой-то момент увидит этот скрипт, выполнит его и пойдёт дальше рисовать страницу. 

Ещё один популярный пример интерпретируемого языка — Python. Он работает по тому же принципу, только вместо браузера Python использует собственный интерпретатор команд. Когда мы в среде разработки запускаем скрипт на питоне, то интерпретатор шаг за шагом выполняет команды.

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

Программные, или компилируемые, языки и машинный код

Другой подход к разработке: программные, или компилируемые, языки. Они устроены так: программист пишет исходный код программы, а потом прогоняет её через компилятор. Компилятор берёт исходный код целиком, анализирует его и создаёт машинный код.

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

Машинный код — последовательность байтов, которая даёт инструкции напрямую процессору. Для человека такой код выглядит как просто набор знаков, но компьютер его понимает. 

Чтобы вы понимали, чем исходный код отличается от машинного, держите пример. Вот исходный код на Swift, который выводит сообщение «Hello, world»:

А вот так выглядит фрагмент машинного кода, который получился после работы компилятора:

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

Примеры компилируемых языков: С, С++, Pascal, Swift и ещё десятки других. Ассемблер, кстати, тоже компилируемый язык — процессор не умеет понимать его исходный код без посторонней помощи.

Языку C уже почти 50 лет, но он всё равно крут

👉 Результат работы компилятора — самостоятельная программа в виде машинного кода, которая потом может работать сама, без компилятора. Один раз скомпилировал — и потом можно запускать её самостоятельно, без внешних программ.

Особенности компилируемых языков

У машинного кода есть один недостаток: он работает только с определёнными процессорами и компьютерами. Если программа написана для Виндоус, запустить на макбуке без специальных ухищрений не получится. Программа для телефона на компьютере заработает только при особых условиях — например, поддержка приложений Android появилась только в Windows 11, а приложения iOS научили запускаться на MacOS только в 2020 году.

Дело в том, что у разных компьютеров разный тип процессора, а машинный код знает, как работать только со своим типом. Чтобы запустить приложение iOS на Mac OS, операционка должна «обернуть» приложение в эмулятор мобильного устройства, и только потом — запустить. 

Снова про снобизм

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

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

Текст:

Михаил Полянин

Редактор:

Максим Ильяхов

Художник:

Даня Берковский

Корректор:

Ирина Михеева

Вёрстка:

Кирилл Климентьев

Соцсети:

Олег Вешкурцев

2.5. Самостоятельные скрипты

2.5. Самостоятельные скрипты

2.

5.
Самостоятельные скрипты

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

  • Текстуры

  • Темы Web-страниц

  • Эмблемы

  • Кнопки

  • Утилиты

  • Создать кисть

  • Разное

Текстуры

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

Рассмотрм скрипт «Земля». В этом скрипте вы должны установить
размер изображения/текстуры, и задать уровень случайности,
используемый для создания земли. Используемые для генерации карты
цвета взяты из текущего выбранного градиента в редакторе
градиентов. Вы также должны установить значения для уровня
детализации, высоту/глубину земли и моря, также как в обычной
дорожной карте, 1:10 представляется как 10.

Темы Web-страниц

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

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

Большинство скриптов достаточно самодокументированы, но вот
несколько подсказок:

  • Оставьте все странные символы, такие как ‘ и » нетронутыми.

  • Удостоверьтесь, что указанная в скрипте текстура существует.

  • Заполнение определяет колчиество пространства вокруг вашего
    текста.

  • Большое значение ширины скоса создаст иллюзию более высокой
    кнопки.

  • Если вы отметите пункт «нажатая», кнопка будет выглядеть
    нажатой.

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

Эмблемы

Здесь вы найдёте все типы генерирующие логотипы скриптов. Это
хорошо, но используйте их с предосторожностью, поскольку люди
могут узнать вашу эмблему, как сделанную известным скриптом GIMP.
Вы должны скорее расценивать это как основу, которую вы можете
изменить в соответствии вашим потребностями. Диалог создания
эмблем более или менее такой же как и для всех подобных скриптов:

  1. В поле ввода текста введите имя вашей эмблемы, например,
    Frozenriver.

  2. В поле ввода размера шрифта введите размер вашей эмблемы в
    пикселах.

  3. В поле ввода текста введите имя шрифта, который вы хотите
    использовать для вашей эмблемы.

  4. Для выбор цвета вашей эмблемы просто щёлкните по кнопке выбора
    цвета. Это вызовет диалог выбора цвета.

  5. Если вы посмотрите на поле выполнения текущей
    команды , вы увидите, что скрипт запущен.

Make Buttons

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

Утилиты

Здесь вы найдёте небольшие, но приятные скрипты: скрипт «Карта
шрифта», который создаёт изображение с вашими шрифтами. Вы должны
ввести названия шрифов, которые вы хотите видеть в поле
отображения шрифтов.

Скрипт «Отобразить градиент» создаёт изображение текущего
выбранного градиента в редакторе градиента. Это может быть
полезным, если вы хотите получить цвета из градиента как из
палитры.

Разное

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

Создать кисть

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

Что такое скрипт? Как работают скрипты и где они используются?

  • Энциклопедия

    • Хостинг
    • FTP
    • доменов
    • DNS
    • Электронная почта
    • Сценарии
    • Каркасы
    • Базы данных
    • Интернет
    • Мультимедиа
    • Веб-дизайн
  • Видео
  • Видеоуроки

На заре Интернет-революции веб-страницы были основаны на HTML — они хорошо выглядели, но не могли обеспечить богатую функциональность, к которой мы привыкли сегодня. Это время, когда языки сценариев впервые появились в мире Интернета. К тому времени сценарии широко использовались почти на каждом компьютере в мире как неотъемлемая часть его операционной системы, но не в Интернете. А с появлением языков сценариев веб-сайты постепенно начали расширять свою функциональность. А благодаря использованию скриптов у нас могут быть веб-сайты с богатым содержанием и функциональностью.

Содержание:

  • Что такое сценарий?
  • Сценарии оболочки
  • Макросы
  • Сценарии на стороне клиента
  • Сценарии на стороне сервера
  • Скрипты с хостингом NTC

Что такое сценарий?

Скрипты невидимы для глаз посетителя, но их доступность в коде веб-сайта определяет поведение веб-сайта в ответ на определенные запросы кликов, отправленные пользователем. Помимо Всемирной паутины, скрипты также используются для автоматизации процессов на локальном компьютере. В общем, скрипты внесли большой вклад в превращение Интернета в такую ​​удобную и гибкую среду, какой мы привыкли видеть ее сегодня.

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

.

Сценарии оболочки

Первые языки сценариев появились в 1960-х годах. Тогда вместо языков сценариев их называли «языками управления заданиями». Это были просто простые наборы команд, выполняемые для того, чтобы избавить человека-оператора от необходимости вводить их все вручную. Эти файлы вскоре превратились в «скрипты оболочки». Сценарии оболочки — это набор команд для оболочки, также известный как командная строка операционной системы. Сценарии оболочки обычно используются для манипуляций с файлами, выполнения программ и печати текста.

Простой сценарий оболочки:

cp *.txt /
cp *.mp3 /

В приведенном выше примере все файлы с расширениями .txt и .mp3 будут скопированы в корневую папку машины.

Макросы

Макросы были следующим уровнем сценариев, которые стали очень популярными в 1980-х годах, когда утвердились графические пользовательские интерфейсы. Макрос позволяет записывать повторяющиеся нажатия клавиш и движения мыши, а затем легко выполнять их. Макросы были начальной стадией GUI (графического пользовательского интерфейса) и сегодня используются почти во всех текстовых редакторах или редакторах электронных таблиц, таких как Word, Excel или OpenOffice.

Сценарии на стороне клиента

Когда языки сценариев проникли в мир Интернета, они были разделены на две части: сценарии на стороне клиента и сценарии на стороне сервера. Языки сценариев на стороне клиента — это сценарии, которые выполняются в браузере клиента. Некоторые из самых популярных: HTML; CSS (каскадные таблицы стилей), которые позволяют отделить метаинформацию стиля от содержимого; XML, который обычно используется только для хранения данных, но с CSS можно использовать вместо HTML; и сценарии Java, также известные как EMACS. Важной особенностью таких скриптов является то, что их исходный код виден всем — им просто нужно использовать функцию «Просмотреть исходный код» своего веб-браузера. Это помогло многим начинающим программистам сделать первые шаги и является отличным способом изучения основ написания сценариев на стороне клиента.

Сценарии на стороне сервера

Когда скрипт называется «серверным скриптом», это означает, что он выполняется на сервере, и посетитель веб-сайта может только видеть результат. Это позволяет использовать очень сложные сценарии, поскольку для их выполнения выделен сервер. Это также позволяет сценариям подключаться к базам данных и использовать данные из них во время работы. Популярными серверными скриптами являются PHP, Python, Perl и т. д.

Скрипты с NTC Хостинг

NTC Hosting предлагает полностью оптимизированные серверы, которые поддерживают большинство популярных серверных скриптов, таких как Perl, Python и PHP. Они работают на стабильной комбинации Linux и Apache, чтобы обеспечить необходимую скорость и стабильность для выполнения ваших скриптов, независимо от того, какой из наших планов веб-хостинга вы выберете.

о скриптах — PowerShell | Microsoft Learn

  • Статья
  • 10 минут на чтение

Краткое описание

Описывает, как запускать и писать сценарии в PowerShell.

Подробное описание

Сценарий — это обычный текстовый файл, содержащий одну или несколько команд PowerShell.
Сценарии PowerShell имеют расширение файла .ps1 .

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

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

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

Как запустить сценарий

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

Политика выполнения по умолчанию, Restricted , запрещает выполнение всех сценариев,
включая сценарии, которые вы пишете на локальном компьютере. Чтобы получить больше информации,
см. about_Execution_Policies.

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

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

В командной строке введите:

 Set-ExecutionPolicy AllSigned
 

или

 Set-ExecutionPolicy RemoteSigned
 

Изменение вступает в силу немедленно.

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

Например, чтобы запустить сценарий Get-ServiceLog.ps1 в каталоге C:\Scripts,
тип:

 C:\Scripts\Get-ServiceLog.ps1
 

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

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

 .\Get-ServiceLog.ps1
 

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

Например, следующая команда использует параметр ServiceName
Сценарий Get-ServiceLog для запроса журнала активности службы WinRM.

 .\Get-ServiceLog.ps1 -ServiceName WinRM
 

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

Запуск с помощью PowerShell

Начиная с PowerShell 3.0, вы можете запускать сценарии из Проводника.

Чтобы использовать функцию «Запустить с PowerShell»:

Запустите проводник, щелкните правой кнопкой мыши имя файла сценария и выберите «Запустить с
PowerShell».

Функция «Запуск с PowerShell» предназначена для запуска сценариев, не имеющих
необходимые параметры и не возвращать вывод в командную строку.

Дополнительные сведения см. в разделе about_Run_With_PowerShell.

Запуск сценариев на других компьютерах

Чтобы запустить сценарий на одном или нескольких удаленных компьютерах, используйте FilePath параметр
командлет Invoke-Command .

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

Следующая команда запускает сценарий Get-ServiceLog.ps1 на удаленном
компьютеры с именами Server01 и Server02.

 Invoke-Command -ComputerName Server01,Server02 -FilePath `
  C:\Scripts\Get-ServiceLog.ps1
 

Получение справки по сценариям

Командлет Get-Help получает разделы справки для сценариев, а также для командлетов
и другие типы команд. Чтобы получить раздел справки для скрипта, введите
Get-Help , за которым следует путь и имя файла сценария. Если сценарий
path находится в вашей переменной среды Path , вы можете опустить путь.

Например, чтобы получить справку по сценарию ServicesLog.ps1, введите:

 get-help C:\admin\scripts\ServicesLog.ps1
 

Как написать сценарий

Сценарий может содержать любые допустимые команды PowerShell, включая отдельные команды,
команды, использующие конвейер, функции и структуры управления, такие как If
операторы и циклы For.

Чтобы написать сценарий, откройте новый файл в текстовом редакторе, введите команды и
сохраните их в файле с допустимым именем файла с расширением .ps1 .

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

 $date = (получить-дата).dayofyear
получить-сервис | выходной файл "$date.log"
 

Чтобы создать этот скрипт, откройте текстовый редактор или редактор скриптов, введите эти
команды, а затем сохраните их в файле с именем ServiceLog.ps1 .

Параметры в сценариях

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

Параметры скрипта работают как параметры функции. Значения параметров
доступны для всех команд в сценарии. Все особенности
параметры функции, включая атрибут Parameter и его именованный
аргументы также допустимы в сценариях.

При запуске скрипта пользователи скрипта вводят параметры после скрипта
имя.

В следующем примере показан сценарий Test-Remote.ps1 с
Имя_компьютера параметр. Обе функции сценария могут получить доступ к
Имя_компьютера Значение параметра .

 параметр ($ComputerName = $(throw "Требуется параметр ComputerName."))
функция CanPing {
   $ошибка.очистить()
   $tmp = тестовое соединение $computername -erroraction SilentlyContinue
   если (!$?)
       {write-host "Ошибка проверки связи: $ComputerName."; вернуть $ложь}
   еще
       {write-host "Пинг успешно выполнен: $ComputerName"; вернуть $true}
}
функция CanRemote {
    $s = new-pssession $computername -erroraction SilentlyContinue
    if ($s -is [System.Management.Automation.Runspaces.PSSession])
        {write-host "Удаленная проверка прошла успешно: $ComputerName. "}
    еще
        {write-host "Удаленная проверка не удалась: $ComputerName."}
}
if (CanPing $computername) {CanRemote $computername}
 

Чтобы запустить этот сценарий, введите имя параметра после имени сценария. Например:

 C:\PS> .\test-remote.ps1 -имя_компьютера Server01
Пинг успешно выполнен: Server01
Ошибка удаленного тестирования: Server01
 

Дополнительные сведения об операторе Param и параметрах функции см.
about_Functions и
about_Functions_Advanced_Parameters.

Написание справки для сценариев

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

  • Справка по сценариям на основе комментариев

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

  • Справка по сценариям на основе XML

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

Чтобы связать сценарий с разделом справки на основе XML, используйте .ExternalHelp
Помогите комментировать ключевое слово. Дополнительные сведения о ключевом слове ExternalHelp см.
about_Comment_Based_Help. Чтобы получить больше информации
о справке на основе XML см.
Как написать справку по командлету.

Возврат значения выхода

По умолчанию сценарии не возвращают состояние выхода после завершения сценария. Вы должны
используйте оператор exit , чтобы вернуть код выхода из скрипта. По умолчанию
9Оператор 0104 exit возвращает 0 . Вы можете указать числовое значение, чтобы вернуть
другой статус выхода. Ненулевой код выхода обычно сигнализирует об ошибке.

В Windows любое число от [int]::MinValue до [int]::MaxValue
допустимый.

В Unix разрешены только положительные числа между [byte]::MinValue (0) и
[byte]::MaxValue (255) разрешены. Отрицательное число в диапазоне от 90 104 до 1 .
через -255 автоматически преобразуется в положительное число путем добавления
256. Например, -2 преобразуется в 254 .

В PowerShell инструкция exit задает значение $LASTEXITCODE
переменная. В командной оболочке Windows (cmd.exe) оператор выхода задает
значение переменной среды %ERRORLEVEL% .

Любой аргумент, не являющийся числом или выходящий за пределы диапазона, зависящего от платформы,
переведено в значение 0 .

Область сценария и источник точек

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

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

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

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

Например:

 . C:\scripts\UtilityFunctions.ps1
 

или

. .\UtilityFunctions.ps1
 

После запуска сценария UtilityFunctions.ps1 функции и переменные,
создаваемые сценарии добавляются в текущую область.

Например, сценарий UtilityFunctions. ps1 создает New-Profile
функция и $ProfileName переменная.

 #In UtilityFunctions.ps1
функция Новый-Профиль
{
  Write-Host "Запуск функции New-Profile"
  $profileName = разделенный путь $profile -leaf
  если (тестовый путь $профиль)
    {ошибка записи "Профиль $profileName уже существует на этом компьютере."}
  еще
    {новый элемент -тип файла -путь $профиль -сила}
}
 

Если запустить сценарий UtilityFunctions.ps1 в его собственной области сценария,
Функция New-Profile и переменная $ProfileName существуют только тогда, когда
скрипт работает. Когда сценарий завершается, функция и переменная
удалены, как показано в следующем примере.

 C:\PS> .\UtilityFunctions.ps1
C:\PS> Новый профиль
Термин «новый профиль» не распознается как командлет, функция, работающая
программа или файл сценария. Проверьте термин и повторите попытку.
В строке:1 символ:12
+ новый профиль <<<<
   + Информация о категории: ObjectNotFound: (новый профиль: строка) [],
   + FullyQualifiedErrorId : CommandNotFoundException
C:\PS> $имя_профиля
C:\PS>
 

Когда вы создаете сценарий и запускаете его, сценарий создает New-Profile
функция и переменная $ProfileName в вашем сеансе в вашей области. После
сценарий запускается, вы можете использовать функцию New-Profile в своем сеансе, как
показано в следующем примере.

 C:\PS> . .\UtilityFunctions.ps1
C:\PS> Новый профиль
    Каталог: C:\Users\juneb\Documents\WindowsPowerShell
    Режим LastWriteTime Длина Имя
    ---- ------------- ------ ----
    -a--- 14.01.2009 15:08 0 Microsoft.PowerShellISE_profile.ps1
C:\PS> $имя_профиля
Microsoft.PowerShellISE_profile.ps1
 

Дополнительные сведения об области см. в разделе about_Scopes.

Скрипты в модулях

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

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

Дополнительные сведения о модулях см. в разделе about_Modules.

Другие функции сценариев

PowerShell имеет множество полезных функций, которые можно использовать в сценариях.

  • #Requires — Вы можете использовать оператор #Requires , чтобы предотвратить запуск скрипта.
    работает без указанных модулей или оснасток и с указанной версией
    PowerShell. Дополнительные сведения см. в разделе about_Requires.

  • $PSCommandPath — содержит полный путь и имя сценария,
    выполняется. Этот параметр действителен во всех сценариях. Эта автоматическая переменная
    представлен в PowerShell 3.0.

  • $PSScriptRoot — содержит каталог, из которого запускается сценарий. В
    PowerShell 2.0 эта переменная действительна только в модулях сценариев ( .psm1 ).
    Начиная с PowerShell 3.0, он действителен во всех скриптах.

  • $MyInvocation — Автоматическая переменная $MyInvocation содержит информацию
    о текущем скрипте, включая информацию о том, как он был запущен или
    «призванный». Вы можете использовать эту переменную и ее свойства для получения информации
    о скрипте во время его работы. Например,
    $MyInvocation Переменная .MyCommand.Path содержит путь и имя файла
    сценарий. $MyInvocation .Line содержит команду, которая запустила скрипт,
    включая все параметры и значения.

    Начиная с PowerShell 3.0, $MyInvocation имеет два новых свойства, которые
    предоставить информацию о скрипте, который вызвал или вызвал текущий
    сценарий. Значения этих свойств заполняются только тогда, когда инициатор или
    caller — это скрипт.

    В отличие от $PSCommandPath и $PSScriptRoot автоматические переменные, которые
    содержать информацию о текущем скрипте, PSCommandPath и
    PSScriptRoot свойства переменной $MyInvocation содержат
    информация о скрипте, вызвавшем текущий скрипт.