Benutzer mit den meisten Antworten
parameter hilfe grundlagen

Frage
-
Hallo zusammen,
ich versuche gerade die Hilfe etwas mehr zu verstehen:
Beispiel
1. get-help restart-Computer -Parameter *Computer* oder "*Computer*" geht leider nicht da hier kein like * erlaubt ist.
lässt sich das aus der Hilfe herauslesen?
2. eine Kombination von paramertern ist auch nicht immer erlaubt
PS H:\> get-help restart-computer -parameter whatif -showwindow
Get-Help : Der Parametersatz kann mit den angegebenen benannten Parametern nicht aufgelöst werden.
In Zeile:1 Zeichen:1
+ get-help restart-computer -parameter whatif -showwindowlässt sich das auch aus der Hilfe herauslesen? Liegt es daran, dass dies ein SwitchParameter ist? und man diese nicht mit Named Parametern mischen darf.
-ShowWindow <SwitchParameter> Displays the help topic in a window for easier reading. The window includes a Find search feature and a Settings box that lets you set options for the display. These include options to display only selected sections of a help topic. Erforderlich? true Position? named Standardwert False Pipelineeingaben zulassen? False Platzhalterzeichen zulassen? false
Chris
Antworten
-
Hallo Chris,
meines Wissen gibt es für den Befehl get-help keinen Parameter wo "Computer" vorkommt.
Meinst du vielleicht so was?
get-help restart-Computer -full
Benjamin Hoch
MCSE: Data Platform
MCSE: Data Management and Analytics
MCSA: SQL Server 2012/2014
MCSA: Windows Server 2012
Blog- Als Antwort markiert -- Chris -- Donnerstag, 15. Dezember 2016 17:31
-
Es mag im ersten Moment verwirren, aber "Get-Help Get-Help -Full" zeigt Dir die Hilfe für die Hilfe an. Wenn Du den Parameter kennst, kannst Du ihn auch angeben:
Get-Help Restart-Computer -Parameter ComputerName
Was meinst Du mit auslesen? Du kannst die Ausgabe in eine Datei umleiten - das geht.
Welche Parameter mit welchen kombinierbar sind, erkennst Du an den verschiedenen Parameter-Sets.
Grüße - Best regards
PS:> (79,108,97,102|%{[char]$_})-join''
- Bearbeitet BOfH-666 Donnerstag, 15. Dezember 2016 15:36
- Als Antwort markiert -- Chris -- Donnerstag, 15. Dezember 2016 17:30
-
Ist das ne Frage? Dann fehlt da ein Fragezeichen. ;-)
Wenn Du Dir die Hilfe für Restart-Computer anzeigen lässt, dann siehst Du unter dem "Kapitel" Syntax, dass da zweimal eine komplette Kommandozeile mit allen möglichen Parameter angezeigt wird. Das sind 2 Parameter-Sets. Du kannst alle Parameter miteinander kombinieren, die in einem Parameter-Set aufgeführt sind - auch wenn es bei manchen keinen Sinn macht, sie miteinander zu kombinieren.
Ich empfehle Dir ein weiteres Mal dringend die Grundlagen von Powershell zu lernen. Damit ersparst Du Dir eine Menge unnütze Frustration und lernst auch, wie Du Dir Hilfe holst bzw. die zur Verfügung stehende Hilfe nutzt. Hier sind zwei Video-Kurse direkt von der Microsoft Virtual Academy. Da kannst Dich mit dem nötigen Wissen berieseln lassen. ;-)
Windows Powershell für Einsteiger
und weiterführend:
Tools und Scripterstellung mit Powershell
Grüße - Best regards
PS:> (79,108,97,102|%{[char]$_})-join''- Als Antwort markiert -- Chris -- Donnerstag, 15. Dezember 2016 17:30
-
> *Kann man aus der Hilfe erkennen ob ein Wildcard erlaubt ist? vom Typ String sind sie ja alle*Manchmal ja, manchmal nein :)> [PS] C:\windows\system32>get-process -name *w*Das geht, da das Ziel der Suche eindeutig definiert ist: Prozesse auf dem lokalen Computer.(In solchen Fällen geht es "oft", aber nicht immer.)> [PS] C:\windows\system32>get-process -computername *pca*Das geht nicht, weil das Ziel der Suche nicht eindeutig ist. Wo sollen die Computer gesucht werden - AD, Workgroup, CSV? :-)Im Zweifel:PS Y:\Dokumente\GitHub> get-help get-process -Parameter name-Name <String[]>Gibt einen oder mehrere Prozesse mit ihrem Prozessnamen an. Sie können mehrere Prozessnamen eingeben (getrennt durch Kommas) und Platzhalterzeichenverwenden. Der Parametername (Name) ist optional.Erforderlich? falsePosition? 1StandardwertPipelineeingaben akzeptieren?True (ByPropertyName)Platzhalterzeichen akzeptieren?true
- Als Antwort markiert -- Chris -- Freitag, 16. Dezember 2016 09:17
-
Kann man aus der Hilfe erkennen ob ein Wildcard erlaubt ist? vom Typ String sind sie ja alle
Kann mann.
x64-PS:>get-help Get-Process -Parameter computername -ComputerName [<String[]>] Specifies the computers for which this cmdlet gets active processes. The default is the local computer. Type the NetBIOS name, an IP address, or a fully qualified domain name (FQDN) of one or more computers. To specify the local computer, type the computer name, a dot (.), or localhost. This parameter does not rely on Windows PowerShell remoting. You can use the ComputerName parameter of this cmdlet even if your computer is not configured to run remote commands. Required? false Position? named Default value none Accept pipeline input? True (ByPropertyName) Accept wildcard characters? false
... als letzte Angabe siehst Du ob Wildcards erlaubt sind. Nicht wundern: Manchmal gibt es widersrpüchliche Angaben dazu in der Parameterbeschreibung und in der tabellarischen Übersicht eines Parameters. ... .einfach ausprobieren! ;-)
Grüße - Best regards
PS:> (79,108,97,102|%{[char]$_})-join''- Als Antwort markiert -- Chris -- Freitag, 16. Dezember 2016 09:17
Alle Antworten
-
Hallo Chris,
meines Wissen gibt es für den Befehl get-help keinen Parameter wo "Computer" vorkommt.
Meinst du vielleicht so was?
get-help restart-Computer -full
Benjamin Hoch
MCSE: Data Platform
MCSE: Data Management and Analytics
MCSA: SQL Server 2012/2014
MCSA: Windows Server 2012
Blog- Als Antwort markiert -- Chris -- Donnerstag, 15. Dezember 2016 17:31
-
Es mag im ersten Moment verwirren, aber "Get-Help Get-Help -Full" zeigt Dir die Hilfe für die Hilfe an. Wenn Du den Parameter kennst, kannst Du ihn auch angeben:
Get-Help Restart-Computer -Parameter ComputerName
Was meinst Du mit auslesen? Du kannst die Ausgabe in eine Datei umleiten - das geht.
Welche Parameter mit welchen kombinierbar sind, erkennst Du an den verschiedenen Parameter-Sets.
Grüße - Best regards
PS:> (79,108,97,102|%{[char]$_})-join''
- Bearbeitet BOfH-666 Donnerstag, 15. Dezember 2016 15:36
- Als Antwort markiert -- Chris -- Donnerstag, 15. Dezember 2016 17:30
-
Hallo Benjamin,
doch es gibt bei restart-computer die Möglichkeit einen Remote Computer zu Restarten.
jetzt wäre doch nett wenn man bei der Hilfe eine -Parameter *Remote* verwenden könnte. ok, das geht aber nicht. Und dies wollte ich aus der Hilfe verstehen.
vielleicht sollte man als Beispiel get-process *wmi* nehmen. wie erkennt man in der Hilfe das hier ein * erlaubt ist.
das zweite ist man kann div. Parameter nicht mischen. Warum? ist dies aus der Hilfe ersichtlich?
in diesem Beispiel darf man -parameter (unglücklicher Beispielname) nicht mit -showWindow mischen
zb get-help restart-computer -parameter * -showwindow
Chris
- Bearbeitet -- Chris -- Donnerstag, 15. Dezember 2016 16:58
-
Ist das ne Frage? Dann fehlt da ein Fragezeichen. ;-)
Wenn Du Dir die Hilfe für Restart-Computer anzeigen lässt, dann siehst Du unter dem "Kapitel" Syntax, dass da zweimal eine komplette Kommandozeile mit allen möglichen Parameter angezeigt wird. Das sind 2 Parameter-Sets. Du kannst alle Parameter miteinander kombinieren, die in einem Parameter-Set aufgeführt sind - auch wenn es bei manchen keinen Sinn macht, sie miteinander zu kombinieren.
Ich empfehle Dir ein weiteres Mal dringend die Grundlagen von Powershell zu lernen. Damit ersparst Du Dir eine Menge unnütze Frustration und lernst auch, wie Du Dir Hilfe holst bzw. die zur Verfügung stehende Hilfe nutzt. Hier sind zwei Video-Kurse direkt von der Microsoft Virtual Academy. Da kannst Dich mit dem nötigen Wissen berieseln lassen. ;-)
Windows Powershell für Einsteiger
und weiterführend:
Tools und Scripterstellung mit Powershell
Grüße - Best regards
PS:> (79,108,97,102|%{[char]$_})-join''- Als Antwort markiert -- Chris -- Donnerstag, 15. Dezember 2016 17:30
-
Die MVA Videos haben üblicherweise Untertitel und die Powershell ist ja auch in großen Teilen in englisch - vielleicht probierst Du's einfach mal, wenn Du ein bissl Zeit übrig hast.
... welches Buch hast Du Dir denn zugelegt? Würdest Du es weiterempfehlen?
Grüße - Best regards
PS:> (79,108,97,102|%{[char]$_})-join'' -
Falls noch nicht bekannt, als allgemeine Quellen-Sammlung zu Powershell eventuell auch interessant:
Was braucht es, um Powershell Pro zu werden?
Gruß TechnikSC885
-
Scripting mit Windows Powershell 3.0 von Microsoft Press. War bisher kein Microsoft Press Fan (zu technisch - bei anderen Theme) aber diese Buch ist anders und besser. Bin zwar erst am Anfang und ich bin ja kein Entwickler, komme von der Admin Seite daher geht's nicht so schnell und habe auch nicht jeden Tag Zeit.
Wie gesagt, derzeit noch am Anfang vom Buch (sehr interessant, auch für Newbie's gut aufgebaut) und daher noch viel über einfache Befehle, Hilfen und Cmdlets finden (wie bei allen Powershell Grundkursen). Manches muss ich leider daher trotzdem noch hinterfragen und euch leider oft ans Ende der Geduld zu bringen.
Deine LINKs klingen interessant. Hoffe mir bleibt auch für die noch einmal Zeit. Da bräuchte man ja schon fast einen Urlaub um das alles zu verarbeiten.
LG Chris
Chris
-
-
Das mit den Parametersets kannte ich noch nicht. Sehr informativ.
Get-Process [[-Name] <String[]>] [-ComputerName <String[]>] [-FileVersionInfo ] [-Module ] [<Allgemeine Parameter>]
Get-Process [-ComputerName <String[]>] [-FileVersionInfo ] -Id <Int32[]> [-Module ] [<Allgemeine Parameter>]
Get-Process [-ComputerName <String[]>] [-FileVersionInfo ] -InputObject <Process[]> [-Module ] [<Allgemeine Parameter>]
ich habe im Buch gelesen, wenn ein Parameter in eckiger Klammer ist kann man ihn auch weglassen. Aber das ist für dich eh nicht neu.
get-process *w*
Kann man aus der Hilfe erkennen ob ein Wildcard erlaubt ist? vom Typ String sind sie ja alle
zb.
[PS] C:\windows\system32>get-process -name *w*
Handles NPM(K) PM(K) WS(K) CPU(s) Id SI ProcessName
------- ------ ----- ----- ------ -- -- -----------
544 30 77560 91824 1040 1 dwm
562 42 70320 71892 2588 0 GWCtlSrv
248 25 12736 16536 259,17 6776 1 GWIdlMon
1030 95 148256 184492 7,59 8924 1 powershell
[PS] C:\windows\system32>get-process -computername *pca*
get-process : Mit dem Remotecomputer konnte keine Verbindung hergestellt werden.
In Zeile:1 Zeichen:1
+ get-process -computername *pca*Chris
-
> *Kann man aus der Hilfe erkennen ob ein Wildcard erlaubt ist? vom Typ String sind sie ja alle*Manchmal ja, manchmal nein :)> [PS] C:\windows\system32>get-process -name *w*Das geht, da das Ziel der Suche eindeutig definiert ist: Prozesse auf dem lokalen Computer.(In solchen Fällen geht es "oft", aber nicht immer.)> [PS] C:\windows\system32>get-process -computername *pca*Das geht nicht, weil das Ziel der Suche nicht eindeutig ist. Wo sollen die Computer gesucht werden - AD, Workgroup, CSV? :-)Im Zweifel:PS Y:\Dokumente\GitHub> get-help get-process -Parameter name-Name <String[]>Gibt einen oder mehrere Prozesse mit ihrem Prozessnamen an. Sie können mehrere Prozessnamen eingeben (getrennt durch Kommas) und Platzhalterzeichenverwenden. Der Parametername (Name) ist optional.Erforderlich? falsePosition? 1StandardwertPipelineeingaben akzeptieren?True (ByPropertyName)Platzhalterzeichen akzeptieren?true
- Als Antwort markiert -- Chris -- Freitag, 16. Dezember 2016 09:17
-
Kann man aus der Hilfe erkennen ob ein Wildcard erlaubt ist? vom Typ String sind sie ja alle
Kann mann.
x64-PS:>get-help Get-Process -Parameter computername -ComputerName [<String[]>] Specifies the computers for which this cmdlet gets active processes. The default is the local computer. Type the NetBIOS name, an IP address, or a fully qualified domain name (FQDN) of one or more computers. To specify the local computer, type the computer name, a dot (.), or localhost. This parameter does not rely on Windows PowerShell remoting. You can use the ComputerName parameter of this cmdlet even if your computer is not configured to run remote commands. Required? false Position? named Default value none Accept pipeline input? True (ByPropertyName) Accept wildcard characters? false
... als letzte Angabe siehst Du ob Wildcards erlaubt sind. Nicht wundern: Manchmal gibt es widersrpüchliche Angaben dazu in der Parameterbeschreibung und in der tabellarischen Übersicht eines Parameters. ... .einfach ausprobieren! ;-)
Grüße - Best regards
PS:> (79,108,97,102|%{[char]$_})-join''- Als Antwort markiert -- Chris -- Freitag, 16. Dezember 2016 09:17