PowerShell

Profil v PowerShellu

Napsáno Matěj Groman

Pokud používáte PowerShell více než sporadicky, jistě jste už přemýšleli o nějaké možnosti customizace. Nebaví vás opakovaně přidávat určitý modul, rádi byste měli definované některé proměnné už při startu prostředí, nebo se třeba chcete při startu přihlásit do některých služeb. Pak jistě oceníte možnost vytvořit si PowerShell profil.

Založení profilu

Pokud jste jej nikdy nepoužili, pravděpodobně váš profil zatím neexistuje. Zjistit to lze jednoduchým příkazem

Test-Path $profile

Pokud se vám vrátil False, je třeba profil vytvořit. To lze jednoduše pomocí New-Item.

New-Item -path $profile -type file –force

Nyní je náš profil vytvořený. Jedná se o typ “Current User, Current Host – console”, což zjednodušeně znamená, že je to profil pro konkrétního uživatele a konkrétní aplikaci. Pokud jste jej vytvořili v PS ISE, jeho cesta je např.

C:\Users\username\Documents\WindowsPowerShel\Microsoft.PowerShellISE_profile.ps1

Pro víc informací ohledně typů souborů můžete kouknout například sem.

Editace profilu

Nyní je sice profil založený, ale je prázdný. Jelikož se jedná o normální soubor .ps1, je možné jej editovat v jakémkoliv editoru. Pro otevření v nejznámějších editorech lze použít následující příkazy:

# PS ISE
ise $PROFILE

# VS CODE
code $PROFILE

# notepad.exe
notepad $PROFILE

#notepad++
start notepad++ $PROFILE

Zde můžete definovat vlastní proměnné, přidat vlastní funkce nebo měnit chování a vzhled konzole.

Změna chování/vzhledu konzole

Pomocí následujícího kódu lze měnit různé parametry jako velikost, barvu textu a pozadí, název okna atd. Kód je jen příklad, je třeba upravit hodnoty dle vlastních preferencí. Clear-Host na konci je zde kvůli vyčištění konzole od výpisů při nastavování. Kód je inspirován serverem HowToGeek.com

Shell

Přidání funkcí a proměnných

Zde není moc co popisovat. Proměnné lze definovat stejně jako ve scriptech, budou dostupné kdykoliv jak v konzoli, tak pro spouštěné scripty. Může se hodit definovat například cestu pro logy, adresy serverů, uživatelská jména, timeouty atd.

Funkce také stačí pouze zkopírovat nebo napsat jako do klasického scriptu. Zde může být užitečná třeba funkce pro přihlášení do určitých služeb, inicializace procesů atd. Následně není třeba funkce importovat, jsou k dispozici vždy a všude.

Spouštění příkazů při startu shellu

Pokud v profilu některou funkci zavoláte, spustí se vždy při načtení, což se děje zejména při startu shellu. To se může hodit zejména pro přihlašování nebo spouštění inicializačních scriptů.

Sending
User Review
5 (2 votes)

O autorovi

Matěj Groman

IT specialista
Institute of Computer Science
Masaryk University
Zaměření: SharePoint Online, O365, Security&Compliance, PowerShell

1 komentář

Zanechat komentář

Tato stránka používá Akismet k omezení spamu. Podívejte se, jak vaše data z komentářů zpracováváme..

error: Obsah je cháněný / Content is protected !!