Azt már tudjuk, hogyan kell függvényekhez súgót készíteni a megfelelően formázott megjegyzésblokkal. De vajon hogyan tudunk olyan súgót készíteni, amelyik a teljes modul céljáról, jellemzőiről ad információkat, hasonlóan a „gyári” about témákhoz?
Szerencsére ilyet is lehet. Példaként nézzük a következő egyszerű modult két függvénnyel, a modulfájl neve legyen Szülinap.psm1:
function Get-MennyitÉltem {
param(
[int] $month,
[int] $day,
[ValidateSet('Days','Hours','Minutes')]
[Parameter()]
$Type = "Days"
)
((Get-Date) - (Get-Date -Date "1970.10.14 4:12")).("Total$Type")
}
function Get-MikorLeszASzülinapom {
param(
[int] $month,
[int] $day
)
$year = (Get-Date).Year
if((get-date) -gt (Get-date -Year $year -Month $month -Day $day)){
$year++
}
((Get-date -Year $year -Month $month -Day $day) - (get-date)).totaldays
}
Készítsünk ehhez súgót! Ez egy egyszerű szövegfájl:
Születésnappal kapcsolatos függvények - angol
Függvények a modulban:
Get-MikorLeszASzülinapom - kiszámítja, hogy hány nap van még a következő születésnapodig.
Get-MennyitÉltem - kiszámítja, hogy mány napot, órát vagy percet éltél.
A neve kötelezően ilyen szerkezetű: about_modulnév.help.txt, azaz a mi esetünkben about_szülinap.help.txt. Ezt fájlt helyezzük be a Windows nyelvi verziónák megfelelően elnevezett alkönyvtárba, angol Windows esetében ez EN-us, magyar esetében Hu-hu. A jobb érthetőség kedvéért mindkettőt létrehoztam, ami olyan Windows esetében, ahol több nyelvi csomag is telepítve van jól jöhet, hiszen a felhasználók válthatnak a nyelvi változatok között, így akár az összes súgóváltozat szerephez juthat. Tehát egy ilyen mappastruktúrát hoztam létre:
PS C:\> Get-Tree -path C:\PowerShell\Szülinap
Szülinap
├───EN-us
│ about_Szülinap.help.txt
└───HU-hu
about_Szülinap.help.txt
Szülinap.psm1
Ezután, ha importáljuk a modult, vagy ha a modul olyan helyen van, ahol a PowerShell alaphelyzetben megtalálja, akkor ezt a súgótémát ugyanúgy megkapjuk, mint a többi about témát:
PS C:\> Import-Module C:\PowerShell\Szülinap
PS C:\> get-help about_szülinap
Születésnappal kapcsolatos függvények - angol
Függvények a modulban:
Get-MikorLeszASzülinapom - kiszámítja, hogy hány nap van még a következő s
zületésnapodig.
Get-MennyitÉltem - kiszámítja, hogy mány napot, órát vagy percet é
ltél.
Megjegyzés
Ha a modulunknak van olyan speciális képessége, kulcsszava, ami más súgótémában nem szerepel, akkor arra futtatva a Get-Help-et, a PowerShell megtalálja némi idő után. Az alábbi példában a ’percet’ szóra keresve is megkapom:
PS C:\> get-help percet
Születésnappal kapcsolatos függvények - angol
Függvények a modulban:
Get-MikorLeszASzülinapom - kiszámítja, hogy hány nap van még a következő s
zületésnapodig.
Get-MennyitÉltem - kiszámítja, hogy mány napot, órát vagy percet é
ltél.