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".
Ottieni i sottotitoli giusti per i tuoi programmi preferiti con didascalia
Vuoi goderti un film in lingua straniera con i sottotitoli? Quindi l'app Caption sarà presto la tua applicazione go-to per l'acquisizione di sottotitoli in diverse lingue.Creato da uno sviluppatore olandese di nome Giel Cobben, "Caption" è un'applicazione che scava attraverso internet per cercare i sottotitoli rilevanti per lo spettacolo che stai guardando.
25 estensioni di Chrome per fantastiche nuove schede
In precedenza abbiamo scritto delle nuove estensioni del browser delle schede che puoi ottenere per Chrome e Firefox. Da allora, stanno spuntando sempre più estensioni, offrendo una varietà di contenuti che verranno visualizzati ogni volta che apri una nuova scheda di Chrome sul tuo browser.In questo post, ho riunito 25 estensioni di schede Chrome che possono aiutarti a essere più organizzato, a essere più rilassato, a imparare più cose e anche a qualcuno che ti darà una risata o due. Dì a