Erinevus lehekülje "Kuidas kirjutada powershellis funktsioon?" redaktsioonide vahel

Allikas: Teadmusbaas
(Kasutatud allikad)
 
(ei näidata 2 kasutaja 14 vahepealset redaktsiooni)
1. rida: 1. rida:
  
 
        Funktsioonid on PowerShell-is selleks, et säästa aega ja vältida sama koodi kirjutamist uuesti. Skript pannakse funktsiooni sisse. Et käivitada funktsioon pead kirjutama selle nime.
 
  
 +
== PowerShell funktsiooni tähendus? ==
  
Nt
+
Windows PowerShell laseb sul luua funktsioone. Funktsioon on nime saanud koodi rida. Kui sa kutsud funktsiooni nime välja,siis käivitub skript selle sees. Sa saad lisada funktsioonile parameetrid, et sa saaksid kasutada sama funktsiooni teistes arvutites.
Function Get-Information
 
{
 
  
(Script pane siia)
+
== Funktsiooni süntaks (''syntax'') ==
  
}
+
function <nimi> \{ <''script''-i plokk> \}
  
Get-Information on selle funktsiooni nimi ja trükkides selle PowerShell-i käivitab selle. Kuidas kirjutada üks PowerShell-i funktioon. Ma näitan ühte sellist, mis näitab arvuti seeria nr jne. Alustasin mõne koodirea kirjutamisega.
+
== Kuidas luua funktsiooni ==
  
1.Võtab arvuti süsteemi info system32 kaustast.
+
Funktsioon koosneb kolmest elementist; võtmesõnast funktsioon, funktsiooni nimest ja ''script''-ist.
  
Get-WmiObject -Class Win32_ComputerSystem
+
Script-i plokk mis sisaladab koodi rida käivitub kui sa kutsud funktsiooni välja. Siin on üks näide mille funktsiooni nimeks on pandud
 +
Failisuurus:
  
 +
function Failisuurus
 +
\{
 +
  dir C:\Windows |
 +
  where \{$_.length -gt 100000\}
 +
\}
  
2.Võtab Operatsiooni süsteemi system32 kaustast.
+
Nagu siin näha see funktsioon algab võtmesõnast function millele järgneb funktsiooni nimi. Koodi rida koosneb kahest eraldi käsust. Esimene käsklus kasutab Get-ChildItem cmdlet selleks, et saada kätte C:\Windows kausta sisu. Tulemus on teises käkluses, mis kasutab Where-Object cmdlet-i, et otsida ainult faile suuremad kui 100,000 byte-i.
  
Get-WmiObject -class win32_OperatingSystem
+
Kui sa teed funktsiooni, PowerShell salvestab selle oma mällu. Kogu funktsiooni tegevuse vältel võid sa funktsiooni välja kutsuda mitu korda tahes lihtsalt sisestades selle nime nagu nt eelmises
  
 +
function Filesuurus-es
  
3 Võtab Bios-i info system32 kaustast.
+
Kui sa vajutad Enter-it, PowerShell käivitab koodi ''scriptis'' ja näitab tulemust.
  
Get-WmiObject -class Win32_BIOS
+
== Lisan parameetrid ==
  
 +
Üks viis seda kasutada on lisada muutuja. Kui sa kutsud PowerShell-is funktsiooni välja siis sa saad parameetri väärtuse funktiooni nimega. Sa saad tuua väärtused massiivist funktsiooni.
  
Nüüd lisan kirjutatud koodi funktiooni ära unusta loogelisi sulge { }.
+
Näiteks järgnev funktsioon kasutab muutujat $fast
  
Function Get-ComputerInformation
+
function Failisuurus2
{
+
\{
    Get-WmiObject -Class Win32_ComputerSystem
+
  dir '''$fast'''\[0\] |
    
+
   where \{$_.Length -gt 100000\}
    Get-WmiObject -class win32_OperatingSystem
+
\}
   
 
    Get-WmiObject -class win32_BIOS
 
}
 
  
Funktiooni nimeks panin, Get-ComputerInformation, kui kirjutada selle funktsiooninime PowerShell-i saab seda kasutada.
+
Esimene käsklus kasutab ($fast\[0\]) kaustateekonna (C:\Windows) asemel. Kui kutsud välja Failisuurus2-se, siis esimene käsklus otsib kausta.
 +
 
 +
Et failisuurus2 välja kutsuda kirjuta funktsiooni nimi ja kaustateekond nede vahel peab olema tühik
 +
 
 +
Näide:
 +
 
 +
Failisuurus C:\Windows
 +
 
 +
Käsklusele vastates PowerShell  kutsub välja selle funktsiooni, asendab ta $args\]0\] C:\Windows-sega ja näitab ära, selles kaustas olevad failid suuremad kui 100,000 byte-i.
 +
 
 +
== Nimelised parameetrid ==
 +
 
 +
Et teha nimelised parameetrid peavad nad olema dollari märgiga, ja kui neid on mitu siis komaga eraldatud sulgudes funktsiooni nime taga.
 +
Näide:
 +
 
 +
function Filesuurus3 ($dir, $minSize)
 +
\{
 +
  dir $dir |
 +
  where \{$_.length -gt $minsize\}
 +
\}
 +
 
 +
lisan kaks nimelist muutujat $dir ja $minsuurus. ''Script-is'' olev kood kasutab neid, et tuvastada soovitud kausta ja miinimum faili suurust (byte-ides).
 +
 
 +
 
 +
== Kasutatud allikad ==
 +
 
 +
http://www.lazywinadmin.com/2015/03/standard-and-advanced-powershell.html
 +
 
 +
http://windowsitpro.com/windows/create-your-own-powershell-functions
 +
 
 +
Koostaja: Oliver Jürisaar rühm IT14

Viimane redaktsioon: 17. mai 2016, kell 06:35


PowerShell funktsiooni tähendus?

Windows PowerShell laseb sul luua funktsioone. Funktsioon on nime saanud koodi rida. Kui sa kutsud funktsiooni nime välja,siis käivitub skript selle sees. Sa saad lisada funktsioonile parameetrid, et sa saaksid kasutada sama funktsiooni teistes arvutites.

Funktsiooni süntaks (syntax)

function <nimi> \{ <script-i plokk> \}

Kuidas luua funktsiooni

Funktsioon koosneb kolmest elementist; võtmesõnast funktsioon, funktsiooni nimest ja script-ist.

Script-i plokk mis sisaladab koodi rida käivitub kui sa kutsud funktsiooni välja. Siin on üks näide mille funktsiooni nimeks on pandud Failisuurus:

function Failisuurus \{

 dir C:\Windows |
 where \{$_.length -gt 100000\}

\}

Nagu siin näha see funktsioon algab võtmesõnast function millele järgneb funktsiooni nimi. Koodi rida koosneb kahest eraldi käsust. Esimene käsklus kasutab Get-ChildItem cmdlet selleks, et saada kätte C:\Windows kausta sisu. Tulemus on teises käkluses, mis kasutab Where-Object cmdlet-i, et otsida ainult faile suuremad kui 100,000 byte-i.

Kui sa teed funktsiooni, PowerShell salvestab selle oma mällu. Kogu funktsiooni tegevuse vältel võid sa funktsiooni välja kutsuda mitu korda tahes lihtsalt sisestades selle nime nagu nt eelmises

function Filesuurus-es

Kui sa vajutad Enter-it, PowerShell käivitab koodi scriptis ja näitab tulemust.

Lisan parameetrid

Üks viis seda kasutada on lisada muutuja. Kui sa kutsud PowerShell-is funktsiooni välja siis sa saad parameetri väärtuse funktiooni nimega. Sa saad tuua väärtused massiivist funktsiooni.

Näiteks järgnev funktsioon kasutab muutujat $fast

function Failisuurus2 \{

 dir $fast\[0\] |
 where \{$_.Length -gt 100000\}

\}

Esimene käsklus kasutab ($fast\[0\]) kaustateekonna (C:\Windows) asemel. Kui kutsud välja Failisuurus2-se, siis esimene käsklus otsib kausta.

Et failisuurus2 välja kutsuda kirjuta funktsiooni nimi ja kaustateekond nede vahel peab olema tühik

Näide:

Failisuurus C:\Windows

Käsklusele vastates PowerShell kutsub välja selle funktsiooni, asendab ta $args\]0\] C:\Windows-sega ja näitab ära, selles kaustas olevad failid suuremad kui 100,000 byte-i.

Nimelised parameetrid

Et teha nimelised parameetrid peavad nad olema dollari märgiga, ja kui neid on mitu siis komaga eraldatud sulgudes funktsiooni nime taga. Näide:

function Filesuurus3 ($dir, $minSize) \{

 dir $dir |
 where \{$_.length -gt $minsize\}

\}

lisan kaks nimelist muutujat $dir ja $minsuurus. Script-is olev kood kasutab neid, et tuvastada soovitud kausta ja miinimum faili suurust (byte-ides).


Kasutatud allikad

http://www.lazywinadmin.com/2015/03/standard-and-advanced-powershell.html

http://windowsitpro.com/windows/create-your-own-powershell-functions

Koostaja: Oliver Jürisaar rühm IT14