Съхранявайте кода на PowerShell във файлове с профили и скриптове, Windows IT Pro

В Windows PowerShell всички функции, променливи или други езикови елементи, създадени от потребителя по време на сесията, се губят при изключване на конзолата PowerShell. Но тази ситуация може да се промени. Кодът може да бъде запазен с помощта на профилни файлове и файлове със скриптове.

Кодовите фрагменти, запазени във файлове на профила, могат да бъдат достъпни след стартиране на PowerShell, а фрагментите, написани във файлове със скриптове, могат да бъдат достъпни при поискване.

По-нататък ще обсъдя как да създам и двата типа файлове и как да въведа инструкции за PowerShell в тях. Освен това ще обясня как да осъществя достъп до този код във файловете на профила и скрипта от конзолата и да използвам входните параметри в скриптовите файлове. На тази основа ще бъде възможно да се създадат кодове, съответстващи на специфични нужди, които ще опростят етапите на широк спектър от административни задачи.

Създайте файл на профила

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

Трябва да създадете свой собствен файл на профила. Най-лесният начин да постигнете това е като използвате променливата $ profile, вградена в PowerShell. Тази променлива съхранява пълното име на пътя на отделния файл на профила за текущия потребител. Променливата $ profile е предварително дефинирана с тази информация, независимо дали е създаден файл на профил. Можете да видите стойността му, като изпълните командата

Конкретният път, посочен в променливата $ profile, се определя от потребителското име и операционната система. Например в Windows Vista пътят ще изглежда по следния начин: C: \ Users \ user1 \ Documents \ Windows PowerShell \ Microsoft.PowerShell_profile.ps1. В Windows XP пътят може да изглежда така: C: \ Documents and Settings \ user1 \ My Documents \ WindowsPowerShell \ Microsoft.PowerShell_profile.ps1.

За да създадете файл на профил с променливата $ profile, трябва да използвате командата New-Item и да определите променливата $ profile като стойността на параметъра -path, по следния начин:

New-Item -path $ profile `
-itemType файл -force

В горната команда файлът е дефиниран като стойност -itemType; той включва опцията -force, която отменя някои ограничения при създаването на файлове. Например, ако файл вече съществува, опцията -force казва на програмата да напише върху съществуващия файл.

Когато изпълните тази команда, Notepad се отваря и показва празен файл. След това можете да въведете инструкции за PowerShell във файла. Имайте предвид, че ако командата се изпълни в ситуация, в която даден файл не съществува, системата издава съобщение за грешка, в което се посочва, че не може да намери посочения път.

Добавяне на съдържание към файл на профил

За да добавите съдържание към файла на профила, просто въведете инструкциите, както бихте ги въвели от конзолата PowerShell. Например можете да дефинирате променлива като тази:

# Вземете деня от седмицата и датата
$ днес = Get-Date -displayHint дата

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

# Вземете 10 най-нови събития.
функционални събития ($ log = "system")
Get-EventLog $ log -newest 10
>

Функцията за събития връща 10-те най-скорошни събития, записани в посочения регистър. Ако не посочите името на регистрационния файл като входен параметър при извикване на тази функция, то ще върне събития от системния дневник. За информация относно персонализираните функции вижте Създаване на собствени функции на PowerShell (http://windowsitpro.com/article/articleid/101610/create-your-own-powershell-functions.html). Когато приключите с въвеждането на инструкциите във файла на профила, запазете файла и затворете Notepad. Примерен файл на профил е показан на Фигура 1.

съхранявайте

Трябва да рестартирате PowerShell, за да използвате файла на профила. Но преди да направите това, трябва да разберете как е конфигурирана политиката за изпълнение на PowerShell. Политиката за изпълнение определя дали файл със скрипт може да бъде изпълнен (и трябва да кажа, че файловете на профила са от типа файл на скрипта). Файловете със скриптове и профилните файлове са текстови файлове с разширение ps1. По подразбиране PowerShell задава политиката за изпълнение на Ограничено; това означава, че файловете на скриптове не се изпълняват и файловете на профила не се зареждат.