5 cmdlet per iniziare con PowerShell

Sommario:

5 cmdlet per iniziare con PowerShell
5 cmdlet per iniziare con PowerShell

Video: 5 cmdlet per iniziare con PowerShell

Video: 5 cmdlet per iniziare con PowerShell
Video: Come Sincronizzare e Condividere File e Cartelle da Qualsiasi Luogo su Qualsiasi Dispositivo - YouTube 2024, Aprile
Anonim
PowerShell sta rapidamente diventando il linguaggio di scripting preferito e la CLI di Power Users e dei professionisti IT. Vale la pena imparare alcuni comandi per iniziare, quindi abbiamo 5 utili cmdlet da imparare oggi.
PowerShell sta rapidamente diventando il linguaggio di scripting preferito e la CLI di Power Users e dei professionisti IT. Vale la pena imparare alcuni comandi per iniziare, quindi abbiamo 5 utili cmdlet da imparare oggi.

Get-Command

Get-Command è uno dei cmdlet più utili dell'intero PowerShell, poiché ti aiuterà a familiarizzare con PowerShell consentendo la ricerca di determinati cmdlet. Usare Get-Command da solo non è certamente molto utile dato che sta solo per sputare ogni comando di PowerShell.

Ma da questo possiamo vedere che gli oggetti che gli output di PowerShell hanno sia un nome che una proprietà ModuleName. Usando queste informazioni possiamo raffinare la nostra ricerca, cercando i cmdlet che contengono determinati termini. Ad esempio se volessi trovare tutti i cmdlet che contengono la parola "IP", potrei fare questo:
Ma da questo possiamo vedere che gli oggetti che gli output di PowerShell hanno sia un nome che una proprietà ModuleName. Usando queste informazioni possiamo raffinare la nostra ricerca, cercando i cmdlet che contengono determinati termini. Ad esempio se volessi trovare tutti i cmdlet che contengono la parola "IP", potrei fare questo:

Get-Command –Name *IP*

Come puoi vedere otteniamo ancora un bel po 'di risultati, la nostra prossima opzione è quella di cercare all'interno di un modulo specifico. Nel nostro caso sceglierò il modulo NetTCPIP.
Come puoi vedere otteniamo ancora un bel po 'di risultati, la nostra prossima opzione è quella di cercare all'interno di un modulo specifico. Nel nostro caso sceglierò il modulo NetTCPIP.

Get-Command –Module NetTCPIP –Name *IP*

Image
Image

Ottenere aiuto

Una volta trovato il cmdlet che si sta cercando usando Get-Command, si vorrà conoscere la sintassi e come utilizzare quel cmdlet specifico. È qui che arriva Get-Help, se hai mai usato la riga di comando in Windows probabilmente hai fatto qualcosa del genere:

ipconfig /?

Bene, questo non funziona in PowerShell, questo perché in PowerShell viene usato uno spazio per separare un comando dai suoi parametri. Quindi, invece, usiamo Get-Help e passiamo il nome di un cmdlet a Get-Help come parametro.

Get-Help Get-Process

Image
Image

Get-Member

Get-Member ci consente di ottenere informazioni sugli oggetti restituiti da un cmdlet. Il problema con get-member, è che si basa sulla funzionalità di pipeline di PowerShell, per dimostrarlo, potremo utilizzare il cmdlet Get-Process.

Come puoi vedere, l'output di PowerShell ci mostra alcune proprietà, che puoi vedere nella parte superiore di ogni colonna. Il primo problema è che, mentre quelle sono le proprietà che potresti cercare la maggior parte del tempo, ce ne sono ancora di più. Il secondo problema è che non mostra alcun metodo che siamo in grado di chiamare sull'oggetto. Per vedere i metodi e le proprietà possiamo collegare il nostro output a Get-Member, in questo modo:
Come puoi vedere, l'output di PowerShell ci mostra alcune proprietà, che puoi vedere nella parte superiore di ogni colonna. Il primo problema è che, mentre quelle sono le proprietà che potresti cercare la maggior parte del tempo, ce ne sono ancora di più. Il secondo problema è che non mostra alcun metodo che siamo in grado di chiamare sull'oggetto. Per vedere i metodi e le proprietà possiamo collegare il nostro output a Get-Member, in questo modo:

Get-Process | Get-Member

Anche se in questo momento potrebbe non significare nulla per te, prima o poi dovrai usare Get-Member e prima imparerai ad usarlo, meglio è. Ad esempio, utilizzando le informazioni dall'output potremmo fare qualcosa di simile:
Anche se in questo momento potrebbe non significare nulla per te, prima o poi dovrai usare Get-Member e prima imparerai ad usarlo, meglio è. Ad esempio, utilizzando le informazioni dall'output potremmo fare qualcosa di simile:

Start-Process notepad.exe $NotepadProc = Get-Process -Name notepad $NotepadProc.WaitForExit() Start-Process calc.exe

Lo script avvierà il blocco note, quindi assegna l'output di "Get-Process -Name notepad" alla variabile $ NotepadProc, quindi chiamiamo il metodo WaitForExit su $ NotepadProc che provoca la sospensione dello script fino a quando non si chiude il blocco note, dopo aver chiuso il blocco note quindi verrà avviata la calcolatrice.

$ _ (Oggetto Pipeline corrente)

Sebbene non sia esattamente un cmdlet, è una delle variabili speciali più utilizzate in PowerShell. Il nome ufficiale per $ _ è "l'attuale oggetto della pipeline". Viene utilizzato nei blocchi di script, nei filtri, nella clausola di processo delle funzioni, dove-oggetto, oggetto foreach e switch. Tuttavia è più facile spiegare con un esempio, che ci porta al nostro prossimo e ultimo cmdlet, Where-Object.

Where-Object

Where-Object fa esattamente quello che sembra, seleziona un oggetto in base al fatto che soddisfi determinati criteri. Ciò riunirà $ _ e le proprietà che possiamo vedere usando Get-Member. Per dimostrarlo, inseriremo l'output di Get-Process nel cmdlet Where-Object.

Get-Process | Where-Object {$_.Name –eq “iexplore”}

Consigliato: