PowerShell – Wie definiere ich mehrere Befehle in einem Alias?

PowerShell – Wie definiere ich mehrere Befehle in einem Alias?

Wenn ich beispielsweise einen Befehl wie diesen eingebe:

Get-Childitem | where-object {$_lastwritetime.Day -eq "$data"} |sort-object lastwrittetime

und ich möchte einen Alias ​​dafür erstellen. Ich habe versucht, so etwas zu tun:

set-alias Check -value (and there is above command)

dann funktioniert der Alias, ignoriert aber Befehle danach Get-Childitem.

Antwort1

Zum Beispiel:

Get-CsAdUser –LdapFilter "Department=IT" | Format-Table DisplayName, Enabled, SipAddress –AutoSize

Wie erstellt man also einen Alias ​​für einen solchen Befehl? Nun,du nicht: Mit PowerShell können Sie nur Aliase für Cmdlets, Funktionen, Skripts oder Dateien erstellen.

Gibt es also eine Möglichkeit, dieses Problem zu umgehen? Natürlich gibt es eine: Es gibt immer eine Möglichkeit, ein Problem zu umgehen. (Nun, außer wenn es keine gibt.) Zum einen könnten Sie ein Skript schreiben, das diesen Befehl für Sie ausführt; daran ist definitiv nichts auszusetzen. Ein noch besserer Ansatz könnte jedoch darin bestehen, eine Funktion zu erstellen, die Ihren Befehl für Sie ausführt. Sie wissen schon, eine Funktion, die so aussieht:

Function itusers {Get-CsAdUser –LdapFilter "Department=IT" | Format-Table DisplayName, Enabled, SipAddress –AutoSize}

Was wir hier haben, ist eine kleine Funktion namens itusers, eine Funktion, die alle Benutzer in der IT-Abteilung zurückgibt und dann den Wert der Attribute DisplayName, Enabled und SipAddress für jeden dieser Benutzer anzeigt (und zwar noch dazu in einer schön formatierten Tabelle).

Anleitung wie gesehen inHier.

verwandte Informationen