Fontolja meg a PowerShell egyszerű színes menüjének szervezésének példáját, amely lehetővé teszi a felhasználó számára, hogy kényelmesen válassza ki a végrehajtott szkript számára elérhető lehetőségek egyikét. Ennek a szkriptnek több lehetőséget kell biztosítania a felhasználó számára, irányítania kell a kiválasztott opciót, és a választástól függően további műveleteket kell végrehajtania.
Tegyük fel, hogy egyszerű szkriptünknek lehetővé kell tennie a felhasználó számára egy adott Windows szolgáltatás elindítását vagy leállítását.
A felhasználó számára kínált menüelemek listája az alábbiak szerint jeleníthető meg:
Írás-fogadó '1. Indítsa el a Windows Update szolgáltatást ”
Írás-fogadó '2. A Windows Update szolgáltatás leállítása ”
Írás-fogadó '3. Kilépés ”
Ezután felhívjuk a felhasználót, hogy válassza ki az elemet annak számának tárcsázásával:
$ selected_menu_item = Read-Host 'Válassza a menüpontot'
Ezután feldolgozzuk a felhasználói választást a kapcsoló utasítás segítségével:
Váltás ($ selected_menu_item)
1 net start wuauserv
2 net stop wuauserv
3 Write-Host 'Kilépés'; exit
alapértelmezett Write-Host 'Hibás bevitel' -ForegroundColor Red
Futtassa a szkriptet és ellenőrizze annak teljesítményét.
Minden jól működik, csak a menünézet hagy sok kívánságot. Valami "okosabb" és kényelmesebb dolgot akarok.
Megpróbálhat létrehozni egy szebb menüt színes címsorral, bekezdésekkel és kerettel kézzel, de ez elég időigényes, mivel manuálisan ki kell számítania a táblázat szegélyének méretét, a szövegmezők hosszától függően. Sokkal könnyebb használni a kész szkriptet. Tetszett a Technet Galéria kész funkciója Hozzon létre színes PowerShell menüfunkciót (https://gallery.technet.microsoft.com/scriptcenter/Create-colorful-PowerShell-8689c5b2), amely rendelkezik az összes szükséges funkcióval. Mentse a funkciókódot egy névvel ellátott fájlba color_menu.psm1 és importálja a PoSh munkamenetbe:C modul importálása: \ PS \ color_menu.psm1
A színmegjelenítés funkciót így hívják:
CreateMenu - Cím "Windows Update Script" - Menü elemek "Indítsa el a Windows Update szolgáltatást", "A Windows Update szolgáltatás leállítása", "Kilépés" -TitleColor Piros -LineColor Cyan -MenuItemColor Sárga
Tehát néhány perc alatt elkészítettünk egy szép színes menüt a PowerShell szkriptünkhöz. A jövőben nem csak a készítője, hanem a hétköznapi felhasználók is kényelmesen használhatják ezt a szkriptet.