Skip Ribbon Commands
Skip to main content

Ondrej Sevecek's Blog

:

Engineering and troubleshooting by Directory Master!
Ondrej Sevecek's Blog > Posts > Vytváření nových objektů v PowerShellu
prosinec 18
Vytváření nových objektů v PowerShellu

Už jsem to několikrát potřeboval a pokaždé jsem to musel hledat někde na disku ve svých vzorových příkladech. Takže dospěl čas, abych to hodil na web a hledal si to i sám online :-)

Jedná se o toto. Pokud používáte PowerShell a chcete si vytvořit nějakou proměnnou, nebo pole (array), není to žádný problém. Do pole se dají dokonce nové položky přičítat a tak tam prvky jednoduše přidávat:

$jmena = @()    # prazdne pole pro zacatek
$jmena += 'Ondrej'
$jmena += 'Kamil'
$jmena += 'Tana'

Jenže jak uděláte tabulku? Tedy něco takového, jako vypadává z různých commandletů? Pole je super, ale má jenom jeden sloupeček. Takže potřebujeme vytvořit více sloupečků do každého řádku:

$jednaAdresa = New-Object PSObject
$jednaAdresa | Add-Member -MemberType NoteProperty -Name Jmeno -Value 'Ondrej'
$jednaAdresa | Add-Member -MemberType NoteProperty -Name Adresa -Value 'Brno'
$jednaAdresa | Add-Member -MemberType NoteProperty -Name Vek -Value '32'

No a je to. Takovéhle objekty, když si dáte do pole, budete mít krásnou tabulku.

Comments

Kratší verze

Ahoj,
tohle mě dlouho taky trápilo, než jsem kdesi v jakémsi skriptu našel něco takového:

$tom = "" | select Jmeno, Prijmeni

$tom.Jmeno = "Tomas"
$tom.Prijmeni = "Hrebicek"

$tom

elegantní, krátké :-) Nikdy jsem si totiž nemohl vzpomenout, jaký zrovna membertype má co být.
Tomáš Hřebíček on 13.2.2012 22:12

Re: Vytváření nových objektů v PowerShellu

huuu, krasa!
ondas on 14.2.2012 9:49

Add Comment

Title


Pole Title nemusíte vyplňovat, doplní se to samo na stejnou hodnotu jako je nadpis článku.

Author *


Pole Author nesmí být stejné jako pole Title! Mám to tu jako ochranu proti spamu. Roboti to nevyplní dobře :-)

Body *


Type number two as digit *


Semhle vyplňte číslici dvě. Předchozí antispemové pole nefunguje úplně dokonale, zdá se, že jsou i spamery, které pochopily, že je občas potřeba vyplnit autora :-)

Email


Emailová adresa, pokud na ni chcete ode mě dostat odpověď. Nikdo jiný než já vaši emailovou adresu neuvidí.

Attachments