20 comandi di Windows PowerShell da conoscere
Windows PowerShell è la nuova shell della riga di comando, che è più potente e programmabile di Command Prompt. Nei miei tre anni di esperienza nell'uso, l'ho trovato davvero utile, specialmente se si tratta di attività di automazione o di scripting . Tuttavia, molti di noi non lo sanno o non preferiscono usarlo al posto della vecchia shell della riga di comando.
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
.
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.
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 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.
È 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
.
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
.
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.
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 [gatto]
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"
.
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"
.
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.
È 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.
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.
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".
Ricerca Emoji con la tastiera su WhatsApp Web
Gli utenti frequenti di WhatsApp Web sono probabilmente consapevoli del fatto che WhatsApp stesso è dotato di una vasta libreria di emoji . Sfortunatamente, scegliere un emoji specifico dall'intera lista può essere piuttosto noioso poiché comporta la navigazione attraverso l'intera serie di emoji.Pe
5 app per acquistare da casa per le vacanze (recensione)
Dicembre è qui, il che significa che è iniziata la obbligatoria maratona di ricerca dell'anima e di ricerca del regalo. Per quest'ultimo, ci sono un sacco di idee regalo disponibili su questo sito e su molti altri, ma non è un motivo per cui tu possa effettivamente fare shopping fino allo sfinimento. C