Homepage » Desktop » 20 comandi di Windows PowerShell da conoscere

    20 comandi di Windows PowerShell da conoscere

    Windows PowerShell è la nuova shell della riga di comando, che è più potente e programmabile di Prompt dei comandi. Nei miei tre anni di esperienza nell'uso, l'ho trovato davvero utile, specialmente se ci sei attività di automazione o scripting. Tuttavia, molti di noi non lo sanno o non preferiscono usarlo al posto della vecchia shell della riga di comando.

    In questo post, ho intenzione di condividere comandi utili ma semplici (con esempi) di Windows PowerShell. È possibile utilizzare questi comandi per eseguire numerose attività, dall'assistenza ai processi di avvio. Iniziamo?

    Nota: Windows PowerShell è costruito con retrocompatibilità in mente, e quindi supporta molti comandi del prompt dei comandi. Detto questo, puoi continuare a utilizzare i vecchi comandi nella sua nuova e 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 informazioni necessarie su cmdlet, comandi, funzioni, script e flussi di lavoro di PowerShell.

    Inoltre, è facile: devi digitare Ottenere aiuto seguito dal comando, di cui, si cercano 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 caratteristica specifica o per uno scopo specifico basato sul tuo parametro di ricerca.

    Devi solo digitare Get-Command seguito dalla query di ricerca in PowerShell. Per esempio, Get-Command * -service * visualizza i comandi con “-servizio” nel suo nome. Per favore 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 lo desideri eseguire un comando o uno script di PowerShell - in locale o in remoto su computer singoli o multipli - “Invoke-Command” È tuo amico. È facile da usare e ti aiuta a controllare i computer in modo batch.

    Devi digitare Invoke-Command seguito dal comando o dallo script con il suo percorso completo. Ad esempio, puoi 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.

    Devi digitare Invoke-Expression seguito da un comando o un'espressione. Ad esempio, puoi assegnare una variabile “$ comando” con una stringa che dice il comando “Get-Process”. Quando corri Invoke-Expression $ Command, “Get-Process” viene eseguito come comando sul tuo computer locale.

    Invoke-WebRequest [iwr]

    Puoi scarica, accedi e cerca 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 come (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 è possibile; tuttavia, ci sono restrizioni per motivi di sicurezza. Ma tu puoi cambia il livello di sicurezza utilizzando il comando Set-ExecutionPolicy.

    Puoi digitare Set-ExecutionPolicy seguito da uno dei quattro livelli di sicurezza - Limitato, firmato a distanza, tutto firmato o non limitato usare 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 oggetto in qualsiasi posizione specifica, ad esempio un file sul disco rigido, Get-Item è il modo migliore per acquisirlo in Windows PowerShell. Devi saperlo non ottiene il contenuto dell'articolo, come i file e le sottodirectory in una determinata directory, a meno che non venga specificato esplicitamente da te.

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

    Copia-oggetto [copia]

    Se hai bisogno di copia file e directory sul disco di archiviazione o voci di registro e chiavi nel registro, è possibile utilizzare Copia-elemento. Funziona come il “cp” comando che abbiamo nel prompt dei comandi, ma è molto meglio.

    Puoi fare uso di Copy-Item comando a copia e rinomina gli oggetti nello stesso comando pure - dare un nuovo nome come destinazione. Ad esempio, puoi copiare e rinominare “Services.htm” a “MyServices.txt” utilizzando Copia elemento "C: \ Services.htm" -Destinazione "C: \ MyData \ MyServices.txt".

    Rimuovi-oggetto [del]

    Se desideri per 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.

    Puoi fare uso di Rimuovi oggetto comando a Elimina elementi da posizioni specifiche usando i parametri. Ad esempio, puoi eliminare il file “MyServices.txt” con il comando Rimuovi-elemento "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 a recuperare il contenuto senza aprire il file.

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

    Set-Content [sc]

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

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

    Ottieni-Variabile [gv]

    Se stai cercando di utilizzare variabili in Windows PowerShell, il comando Get-Variable ti aiuta a visualizza i valori delle variabili. Li mostra in forma tabellare e consente di includere, escludere e utilizzare i caratteri jolly.

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

    Set-Variabile [set]

    Puoi assegnare o modificare / ripristinare il valore di una variabile usando il comando Set-Variable. Come scorciatoia, puoi anche impostare una variabile semplice usando il formato $ $ VarName = VarValue $, come $ desc = "Una descrizione".

    Puoi usare il comando Set-Variable seguito dai suoi parametri per impostare una variabile. Ad esempio, possiamo impostare il valore per una variabile denominata “disc” usando il comando Set-Variable -Name "desc" -Value "A Descrizione".

    Get-Process [gps]

    Di solito usiamo Task Manager per trova 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.

    Puoi scrivere il comando come Get-Process insieme alla tua query di ricerca. Ad esempio, se hai bisogno di informazioni sui processi con “Esplorare” nel loro nome, puoi digitare Get-Process * Esplora * (notare gli asterischi).

    Start-Process [saps]

    Windows PowerShell lo rende facile avviare 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à.

    Puoi digitare Start-Process seguito dai suoi parametri per usare il comando. Ad esempio, puoi avviare Blocco note digitando Start-Process -FilePath "notepad" -Verb runAs in Windows PowerShell.

    Stop-Process [uccidere]

    Puoi interrompere specifiche o tutte le istanze di un processo in esecuzione sul tuo computer usando il suo nome o PID (Process ID), 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.

    Puoi digitare il comando Stop-Process seguito dai suoi parametri per fermare i processi dati. Ad esempio, è possibile interrompere tutti i processi di Blocco note utilizzando il comando Stop-Process -Name "notepad".

    Get-Service [gsv]

    Quando hai bisogno informazioni su servizi specifici (in esecuzione o interrotta) sul computer, è possibile 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 suoi parametri. Ad esempio, digitare quanto segue Get-Service | Where-Object $ _. Status -eq "Running" per ottenere i servizi “in esecuzione” sul tuo sistema.

    Start-Service [sasv]

    Se lo desideri avviare un servizio sul 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. Per esempio, Start-Service -Name "WSearch" avvia il servizio “Ricerca di Windows” sul tuo computer locale.

    Stop-Service [spsv]

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

    ConvertTo-HTML

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

    Puoi usare ConvertTo-HTML insieme con l'output di un altro comando utilizzando piping. Per esempio Get-Service | ConvertTo-HTML -Proprietà Nome, Stato> C: \ Services.htm visualizza l'elenco di tutti i servizi e il loro stato sotto forma di un rapporto Web, che è memorizzato nel file “Services.htm”.

    Questo è tutto sui comandi essenziali .