PowerShell – 20 comandi PowerShell

18 / 100
()



20 comandi di Windows PowerShell da conoscere

In questo post, condividerò comandi utili e semplici (con esempi) di Windows PowerShell. È possibile utilizzare questi comandi per eseguire numerose attività, dall’assistenza ai processi di avvio. Iniziamo?

 

Nota: Windows PowerShell è progettato tenendo presente la compatibilità con le versioni precedenti e supporta quindi molti comandi del prompt dei comandi. Detto questo, puoi continuare a usare i vecchi comandi nella sua nuova, colorata interfaccia.

Get-Help [aiuto]

Se sei nuovo in PowerShell, potresti incontrare dei problemi; e in tali situazioni, Get-Help diventa il tuo salvatore. Fornisce le informazioni necessarie su cmdlet, comandi, funzioni, script e flussi di lavoro di PowerShell.

Inoltre, è facile: devi digitare Get-Help seguito dal comando, di cui, cerchi i dettagli. Ad esempio, è possibile ottenere informazioni su “Get-Process” utilizzando Get-Help Get-Process .

Get-Command [gcm]

Windows PowerShell consente di scoprirne i comandi e le funzionalità utilizzando Get-Command. Visualizza l’elenco di comandi di una funzione specifica o per uno scopo specifico in base ai parametri di ricerca.

È sufficiente digitare Get-Command seguito dalla query di ricerca in PowerShell. Ad esempio, Get-Command *-service* visualizza i comandi con “-service” nel suo nome. Ricordati di utilizzare gli asterischi su entrambi i lati della query perché è una wild card che aiuta a cercare l’ignoto.

Invoke-Command [icm]

Quando desideri eseguire un comando o uno script di PowerShell, in locale o in remoto, su uno o più computer, “Invoke-Command” è tuo amico. È facile da usare e ti aiuta a controllare i computer in modo batch.

È necessario digitare Invoke-Command seguito dal comando o dallo script con il suo percorso completo. Ad esempio, è possibile eseguire un comando “Get-EventLog” utilizzando Invoke-Command -ScriptBlock {Get-EventLog system -Newest 50} o su un computer remoto “Server01” utilizzando Invoke-Command -ScriptBlock {Get-EventLog system -Newest 50} -ComputerName Server01 .

Invoke-Expression [iex]

Invoke-Expression esegue un altro comando o espressione . Se stai fornendo un’espressione o una stringa come input, questo comando prima lo valuta, poi lo esegue, ma funziona anche solo localmente, a differenza del comando precedente.

È necessario digitare Invoke-Expression seguito da un comando o un’espressione. Ad esempio, è possibile assegnare una variabile “$ Command” con una stringa che indica il comando “Get-Process”. Quando si esegue Invoke-Expression $Command, “Get-Process” viene eseguito come comando sul computer locale.

Invoke-WebRequest [iwr]

È possibile scaricare, accedere e acquisire informazioni su siti Web e servizi Web mentre si lavora su Windows PowerShell utilizzando Invoke-WebRequest.

Devi usarlo come Invoke-WebRequest seguito dai suoi parametri. Ad esempio, è possibile ottenere i collegamenti su una determinata pagina Web utilizzando il comando as (Invoke-WebRequest -Uri "https://docs.microsoft.com").Links.Href .

Set-ExecutionPolicy

Sebbene la creazione e l’esecuzione di script (con estensione “ps1”) in Windows PowerShell sia possibile; tuttavia, esistono restrizioni per motivi di sicurezza. Ma puoi cambiare il livello di sicurezza usando il comando Set-ExecutionPolicy.

È possibile digitare Set-ExecutionPolicy seguito da uno dei quattro livelli di sicurezza – Restricted, Remote Signed, All Signed o Unrestricted per utilizzare il comando. Ad esempio, è possibile assegnare lo stato della politica limitata utilizzando Set-ExecutionPolicy -ExecutionPolicy Restricted .

Get-Item [gi]

Se stai cercando informazioni su un elemento in un dato luogo, ad esempio un file sul disco rigido, Get-Item è il modo migliore per acquisirlo in Windows PowerShell. È necessario sapere che non ottiene il contenuto dell’elemento, ad esempio file e sottodirectory in una determinata directory, a meno che non venga specificato esplicitamente dall’utente.

È necessario digitare Get-Item seguito da un percorso o una stringa insieme ai relativi parametri, se presenti. Ad esempio, è possibile ottenere tutti gli elementi (file o cartelle) che iniziano con “M” nella directory corrente utilizzando Get-Item M* . Insieme al contenuto delle directory, può anche ottenere il contenuto delle chiavi di registro.

Copia-oggetto [copia]

Se è necessario copiare file e directory sul disco di archiviazione o voci di registro e chiavi nel registro, è possibile utilizzare Copia-Elemento. Funziona in modo simile al comando “cp” che abbiamo nel prompt dei comandi, ma è molto meglio.

È possibile utilizzare il comando Copy-Item per copiare e rinominare gli oggetti con lo stesso comando – assegnare un nuovo nome come destinazione. Ad esempio, è possibile copiare e rinominare “Services.htm” in “MyServices.txt” utilizzando Copy-Item "C:\Services.htm" -Destination "C:\MyData\MyServices.txt" .

Rimuovi-oggetto [del]

Se desideri eliminare elementi come file, cartelle, funzioni e chiavi e variabili del Registro di sistema, Remove-Item è il comando che fa per te. Quello che ho trovato interessante è che fornisce parametri per includere ed escludere gli oggetti.

È possibile utilizzare il comando Remove-Item per eliminare elementi da posizioni specifiche utilizzando i parametri . Ad esempio, è possibile eliminare il file “MyServices.txt” con il comando Remove-Item "C:\MyData\MyServices.txt" .

Get-Content [cat]

Quando è necessario visualizzare il contenuto di un file di testo in una posizione specifica, lo si apre e lo si legge in un editor di codice / testo come Notepad ++. In Windows PowerShell, è possibile utilizzare Get-Content per recuperare il contenuto senza aprire il file.

Ad esempio, è possibile recuperare 50 righe di contenuto di “Services.htm”, quindi è possibile utilizzare Get-Content "C:\Services.htm" -TotalCount 50 .

Set-Content [sc]

È possibile salvare il testo in file utilizzando Set-Content, in modo simile al comando “echo” di Bash Shell. In combinazione con Get-Content, puoi anche recuperare il contenuto di un file e copiarlo in un altro file usando questo comando.

Ad esempio, è possibile digitare Set-Content per scrivere o sostituire il contenuto di un file con nuovi contenuti. Inoltre, puoi associarlo con l’esempio del precedente comando per salvare il suo output in un nuovo file chiamato “Sample.txt” usando Get-Content "C:\Services.htm" -TotalCount 50 | Set-Content "Sample.txt" Get-Content "C:\Services.htm" -TotalCount 50 | Set-Content "Sample.txt" .

Ottieni-Variabile [gv]

Se si sta cercando di utilizzare le variabili in Windows PowerShell, il comando Get-Variable consente di visualizzare i valori delle variabili . Li mostra in forma tabellare e consente di includere, escludere e utilizzare i caratteri jolly.

È possibile utilizzare questo comando digitando Get-Variable seguito dalle sue opzioni e parametri. Ad esempio, è possibile recuperare il valore per una variabile denominata “desc” utilizzando il seguente codice: Get-Variable -Name "desc" .

Set-Variabile [set]

È possibile assegnare o modificare / ripristinare il valore di una variabile utilizzando il comando Imposta-Variabile. Come scorciatoia, puoi anche impostare una variabile semplice usando il formato $ { $ VarName = VarValue } $, come $desc = "A Description" .

È possibile utilizzare il comando Set-Variable seguito dai suoi parametri per impostare una variabile. Ad esempio, possiamo impostare il valore per una variabile denominata “desc” utilizzando il comando Set-Variable -Name "desc" -Value "A Description" .

Get-Process [gps]

Di solito usiamo Task Manager per trovare i processi in esecuzione sul nostro computer. In Windows PowerShell, chiunque può utilizzare Get-Process per ottenere l’elenco dei processi attualmente in esecuzione, che è possibile elaborare ulteriormente.

È possibile scrivere il comando come Get-Process insieme alla query di ricerca. Ad esempio, se hai bisogno di informazioni sui processi con “esplora” nel loro nome, puoi digitare Get-Process *explore* (nota gli asterischi).

Start-Process [saps]

Windows PowerShell semplifica l’ avvio di uno o più processi sul tuo computer. Ho trovato che questo comando è utile nelle app di scripting poiché è uno dei comandi must-have necessari per automatizzare un’attività.

È possibile digitare Start-Process seguito dai relativi parametri per utilizzare il comando. Ad esempio, è possibile avviare Blocco note digitando Start-Process -FilePath "notepad" -Verb runAs in Windows PowerShell.

Stop-Process [kill]

È possibile interrompere specifiche o tutte le istanze di un processo in esecuzione sul proprio computer utilizzando il suo nome o PID (ID processo), grazie al comando Stop-Process. Ciò che lo rende avvincente è che puoi scoprire che un processo è stato fermato o meno e puoi anche interrompere i processi che non sono di proprietà o avviati dall’utente corrente.

È possibile digitare il comando Stop-Process seguito dai relativi parametri per arrestare i processi specificati. Ad esempio, è possibile interrompere tutti i processi di Blocco note utilizzando il comando Stop-Process -Name "notepad" .

Get-Service [gsv]

Quando hai bisogno di informazioni su servizi specifici (in esecuzione o arrestati) sul tuo computer, puoi utilizzare Get-Service. Visualizza i servizi installati nel sistema e fornisce opzioni per filtrarli e includerli ed escluderli.

Se si desidera utilizzare questo comando, è possibile digitare Get-Service seguito dai relativi parametri. Ad esempio, digitare il seguente Get-Service | Where-Object {$_.Status -eq "Running"} Get-Service | Where-Object {$_.Status -eq "Running"} per far funzionare i servizi sul proprio sistema.

Start-Service [sasv]

Se desideri avviare un servizio sul tuo computer, il comando Start-Service può aiutarti a fare lo stesso da Windows PowerShell. Ho trovato che è abbastanza potente per avviare un servizio anche se quel servizio è disabilitato sul tuo computer.

È necessario specificare il nome del servizio mentre si utilizza il comando Start-Service . Ad esempio, Start-Service -Name "WSearch" avvia il servizio “Ricerca di Windows” sul tuo computer locale.

Stop-Service [spsv]

Se desideri interrompere i servizi in esecuzione sul tuo computer, il comando Stop-Service sarà utile. È necessario specificare il nome del servizio insieme a Stop-Service . Ad esempio, digitare Stop-Service -Name "WSearch" per interrompere il servizio “Ricerca di Windows” sul computer.

ConvertTo-HTML

PowerShell può fornire incredibili informazioni sul tuo sistema. Tuttavia, viene presentato principalmente in un formato indigeribile, ma è possibile utilizzare ConvertTo-HTML per creare e formattare un report per analizzarlo o inviarlo a qualcuno.

È possibile utilizzare ConvertTo-HTML insieme all’output di un altro comando tramite piping. Ad esempio Get-Service | ConvertTo-HTML -Property Name, Status > C:\Services.htm Get-Service | ConvertTo-HTML -Property Name, Status > C:\Services.htm visualizza l’elenco di tutti i servizi e il loro stato sotto forma di un report Web, che è memorizzato nel file “Services.htm”.

Questo è tutto sui comandi essenziali che devi sapere su Windows PowerShell.

How useful was this post?

Click on a star to rate it!

Average rating / 5. Vote count:

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?