Федеральное государственное бюджетное



Pdf көрінісі
бет97/118
Дата21.12.2023
өлшемі5,01 Mb.
#141929
1   ...   93   94   95   96   97   98   99   100   ...   118
Байланысты:
LabR OP.04

deviceid, freespace
Данные выводятся в байтах, что неудобно, поэтому переводим их в 
гигабайты: 


PS C:\> get-wmiobject win32_LogicaIDisk -filter "drivetype=3" 
|%{$_.deviceid;$_.freespace/lGB}
Задание: 
Выполнить все представленные выше команды в PowerShell и прокомментировать, 
что они обозначают. 


Министерство образования и науки Российской Федерации
федеральное государственное бюджетное образовательное учреждение высшего образования
"
Российский экономический университет имени Г.В.Плеханова"
МОСКОВСКИЙ ПРИБОРОСТРОИТЕЛЬНЫЙ ТЕХНИКУМ
 
ЛАБОРАТОРНАЯ РАБОТА № 9 
 
«Работа со скриптами в PowerShell.»
(время на выполнение – 2 часа)
по дисциплине: 
ОП.04 Операционные системы
Составил: 
М.В.Синдикаев, преподаватель 
ФГБОУ ВО "РЭУ им. Г.В.Плеханова"
 
 


Цель работы: 
Ознакомиться с написанием и выполнением скриптов в PowerShell. 
Теоретические сведения
1. Написание скрипта 
Скрипт PowerShell (не важно какой версии) - это текстовый файл с расширением *.ps1. 
Вот пример простого Power Shell срипта (файл systemInfo.ps1): 
# Retrieve WMI object for the operating system
Get-WmiObject Win32_OperatingSystem
Этот файл можно создавать и редактировать, например, в FAR Manager.
Обратите внимание, что FAR Manager хоть и может работать в консоли Power Shell, но 
выполняет из-под себя скрипты в окружении обычной Windows-консоли cmd. То есть, FAR 
Manager можно использовать только для создания и редактирования PowerShell скриптов, 
но не для запуска. Но прежде чем разочаровываться, прочитайте пункт 3 
2. Запуск скрипта 
Скрипт нужно выполнять из консоли Power Shell, а не из обычной консоли Windows. В 
консоли Power Shell необходимо перейти в каталог, где лежит скрипт (командами cd), и 
затем запустить сам скрипт, обязательно прописав перед ним символы ".\". Например, 
имеем путь к файлу скрипта d:\work\systemInfo.ps1. Тогда команды запуска будут 
выглядеть так: 
d: 
cd \ 
cd work 
.\systemInfo.ps1 
или так (просто указывается полный путь к скрипту): 
d:\work\systemInfo.ps1 
Скорее всего, при запуске скрипта появится следующая ошибка: 
Не удается загрузить файл D:\work\systemInfo.ps1, так как выполнение скриптов 
запрещено для данной системы. Введите "get-help about_signing" для получения 
дополнительных сведений. 
строка:1 знак: 18 
+ CategoryInfo : NotSpecified: (:) [], PSSecurityException 
+ FullyQualifiedErrorId : RuntimeException 
Ошибка появляется из-за того, что по-умолчанию в Power Shell включена максимальная 
политика безопасности, которая позволяет выполнять команды PowerShell в командной 
строке, но не позволяет в той же командной строке выполнить скрипт с командами 
PowerShell. 
Чтобы разрешить выполнение PowerShell скриптов, нужно создать *.bat файл, например 
enableScript.bat со следующим содержимым: 
powershell -Command Set-ExecutionPolicy RemoteSigned 
Этот *.bat файл можно выполнить в любой консоли: хоть в PowerShell, хоть в обычной 
cmd. После выполнения этого файла, PowerShell-скрипты станут запускаться в консоли 
PowerShell. 


3. Запуск PowerShell-скрипта из обычной Windows-консоли cmd 
Скрипт PowerShell можно выполнить и из обычной консоли Windows. Для этого можно 
воспользоваться командой: 
Powershell -File ./systemInfo.ps1 
Таким образом можно выполнять скрипты прямо из FAR Manager, и они будут работать.
Но тут есть небольшая тонкость. Параметр -File срабатывает только на локальных путях, 
даже если путь указан относительный "./". То есть, если *.ps1 - файл лежит на локальном 
диске C: или D:, то такой вызов будет работать. Но если попробовать выполнить скрипт, 
расположенный на доменном ресурсе, то скрипт не будет найден. Возможно, это исправят 
в следующих версиях PowerShell


Достарыңызбен бөлісу:
1   ...   93   94   95   96   97   98   99   100   ...   118




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет