10 semplici comandi di PowerShell che tutti gli utenti Windows dovrebbero conoscere

PowerShell ti offre tutto il controllo di cui hai bisogno sul tuo PC Windows ed è facile da imparare. Quindi abbandona il prompt dei comandi(Command Prompt) e usa i comandi di Windows PowerShell per automatizzare quelle attività amministrative ripetitive. 

L' apprendimento di PowerShell ti insegnerà anche come gestire la maggior parte delle attività amministrative di Linux all'interno della shell bash. PowerShell è simile a quello che trovi nella maggior parte delle  distribuzioni (Distros)Linux.Â(Linux )

Cos'è PowerShell?

Windows PowerShell è un'interfaccia della riga di comando e un linguaggio di scripting sviluppato da Microsoft per gli amministratori di sistema. Ma non devi essere un amministratore o un programmatore per usarlo perché è molto più semplice di altri linguaggi di programmazione. È simile all'inglese(English) normale e tutti possono capirlo e usarlo per amministrare i propri computer.

I comandi utilizzati in Windows PowerShell sono noti come "cmdlet". Ti consentiranno di attivare un'azione specifica, o una serie di azioni, sul tuo computer. Queste azioni possono essere semplici, come l'accesso a una rete wireless, o più complesse, come l'automazione di attività ripetitive specifiche. 

Per aprire PowerShell, premere il pulsante Start , digitare " powershell " nella casella di ricerca e selezionare Windows PowerShell . Ti aprirai all'interfaccia della riga di comando, dove sarai pronto per iniziare a digitare i comandi.

In questo articolo, esamineremo dieci dei comandi PowerShell più utili e facili .

1. Ottieni aiuto

Il cmdlet Get-Help è un ottimo punto di partenza in (Get-Help)PowerShell . Fornisce una panoramica di ciò che puoi fare ed è ottimo anche quando hai bisogno di maggiori informazioni su un particolare cmdlet. 

Basta(Simply) aprire la finestra di PowerShell e digitare (PowerShell)Get-Help . Questo aprirà una panoramica completa che ti insegnerà cos'è PowerShell e ne capirai la funzionalità e la struttura. È inoltre possibile accedere al Web per file della guida più avanzati direttamente tramite l'interfaccia. È possibile scaricare questi file per un uso successivo. 

Ma questa non è la fine del comando get-help. Digitare un 

Get-Help * 

PowerShell elencherà tutti i cmdlet che puoi usare in quel momento. L'elenco sarà probabilmente enorme e non è necessario conoscere tutti i cmdlet visualizzati. Ma sentiti libero di leggerli ed esplorare tutte le possibilità a tua disposizione.

Tipo:

Get-Help <command name>

Non hai bisogno delle parentesi, digita semplicemente il nome del comando che ti interessa e questo cmdlet ti darà le informazioni di base al riguardo. Per una spiegazione ancora più dettagliata di un comando, digitare:

Get-Help <command name> -Full

Se hai bisogno di un esempio su come usare un certo tipo di comando:

Get-Help <command name> -Example

2. Ottieni comando

Vuoi recuperare rapidamente informazioni su un comando specifico o una serie di comandi? Il cmdlet Get-Command lo farà per te. Ci sono così tante opzioni all'interno di Get-Command(Get-Command) , ma tu, come utente di base di PowerShell , non hai bisogno della maggior parte di esse. Di seguito sono riportati alcuni cmdlet di base che saranno utili, soprattutto durante la navigazione tra i comandi disponibili.

Se desideri un elenco di cmdlet specifici dello stesso tipo:

Get-Command -<CommandType>

Ad esempio, questa frase complessa ordinerà al tuo computer di visualizzare un elenco di tutti i comandi di tipo cmdlet disponibili e di ordinarli in base all'ordine alfabetico del nome nel loro nome:

Get-Command -Type Cmdlet | Sort-Object -Property Noun| Format-Table -GroupBy Noun

Questo è un eccellente esempio di un comando più complesso che farà eseguire a PowerShell un'attività complicata. Una volta compresa la sintassi, vedrai che l'utilizzo di PowerShell è spesso il modo più rapido e semplice per eseguire alcune operazioni sul tuo computer.

Se vuoi trovare un comando specifico in base al suo nome, digita semplicemente:

Get-Command -Name <name of command>

Se non conosci il nome esatto del comando che stai cercando, ma conosci parte del nome, puoi digitare: 

Get-Command -Name <name of command> -UseFuzzyMatching

Questo cmdlet incaricherà il tuo computer di trovare i comandi che corrispondono strettamente a ciò che hai digitato nel campo <nome>. Puoi anche usare questo cmdlet se sei soggetto a errori di ortografia e non vuoi preoccuparti di correggerti continuamente.

3. Ottieni contenuto

Se si desidera visualizzare il contenuto di un file, utilizzare il cmdlet Get-Content. Dovrai specificare la posizione esatta di detto file in modo che il tuo computer possa trovarlo.

Nell'esempio sopra, puoi vedere il contenuto di un file di testo di prova creato per questo scopo. Questo è un comando semplice, ma se sai cosa fa, puoi combinarlo con altri comandi ed eseguire attività davvero potenti tramite Windows PowerShell .

4. Get-Processo

Il cmdlet Get-Process fornisce informazioni sui processi attualmente in esecuzione sul computer. Puoi vedere l'utilizzo della memoria, i cicli  della CPU , l'ID del processo e altri attributi.Â(CPU)

Se aggiungi il nome del processo a questo cmdlet, puoi visualizzare le informazioni su un processo specifico. Ad esempio, se desideri informazioni sul processo di richiesta Discord , digita semplicemente Get-Process Discord .

Puoi avviare o interrompere i processi tramite PowerShell semplicemente sostituendo il prefisso "Ottieni" della sintassi. Per avviare un processo, digitare:

Start-Process <process name or ID>   

Per interrompere un processo, digitare:

Stop-Process <process name or ID>

5. Ottieni assistenza

In qualità di amministratore di sistema, potresti trovare molto utile il cmdlet Get-Service . Questo semplice cmdlet visualizzerà tutti i servizi attualmente in esecuzione sul tuo sistema e ti consentirà di controllarli. Ciò significa che puoi vedere tutti i programmi attualmente in funzione per far funzionare il tuo computer. 

Ora puoi usare il nome del servizio per controllarlo. Utilizzare comandi come Restart-Service <service name> per sbloccare quelli bloccati, Stop-Service <service name> per interromperli completamente e Start-Service per riavviarli.

6. Ottieni oggetto

Se hai bisogno di un elemento specifico, potrebbe essere più veloce trovarlo tramite PowerShell piuttosto che utilizzando una barra di ricerca integrata nel tuo sistema operativo. È particolarmente conveniente se si conosce la posizione del file di cui si ha bisogno. Usa semplicemente(Simply) il comando in questo modo:

Ottieni l'elemento C:(Get-Item C:)

Questo ti porterà l'elenco dei file nel disco rigido "C:". Puoi essere ancora più specifico e cercare in tutte le directory sotto il profilo dell'utente o approfondire le directory "documenti" o "download". Per fare ciò, digita:

Get-Tem C:\users\<user name>\*

Se è necessario recuperare un elemento figlio da un contenitore, ad esempio una directory di sistema, è possibile utilizzare il cmdlet Get-ChildItem . Questo comando ti mostrerà tutti i file e le directory all'interno di quel contenitore. Come per il cmdlet Get-Item , dovrai specificare il percorso del contenitore.

Per eliminare elementi, puoi sostituire il suffisso "Ottieni" con "Rimuovi". Ciò ti consentirà di eliminare tutto, da file e cartelle a chiavi di registro e funzioni. Digita Remove-Item <location\ name> . È possibile elaborare questo cmdlet ed eliminare solo i file nascosti e di "sola lettura" oppure eliminare elementi da cartelle e sottocartelle specifiche.

7. Converti in HTML

Questo comando ti aiuterà a convertire un oggetto .NET in un file HTML che può essere visualizzato nei browser Web . Questo è un cmdlet di output, il che significa che funziona perfettamente con altri cmdlet. Basta(Simply) aggiungerlo alla fine di altri cmdlet e includere un percorso file specifico. 

Ad esempio, se desideri creare un file HTML che mostri il nome, il percorso e la società di tutti i processi correnti di un computer locale, digita: 

Get-Process | ConvertTo-Html -Property Name, Path, Company -Title “Process Information” | Out-File filename.htm

Sostituisci(Replace) filename.htm con il nome di file che desideri.

Per aprire il file creato, utilizzare il cmdlet Invoke-Item(Invoke-Item cmdlet ) più <file name.htm> . Il contenuto dovrebbe assomigliare all'immagine qui sotto.

8. Politica di esecuzione degli insiemi

Se desideri eseguire script di PowerShell locali , dovrai modificare i criteri di esecuzione di PowerShell stesso. Sui computer Windows , il criterio di esecuzione è sempre limitato e dovrai cambiarlo in RemoteSigned o Unrestricted . Su computer non Windows come Linux o Mac , in genere è impostato su Senza restrizioni(Unrestricted) e non può essere modificato. 

Se vuoi saperne di più sui criteri di esecuzione di PowerShell , digita semplicemente:(PowerShell)

aiuta Set-ExecutionPolicy(help Set-ExecutionPolicy)

PowerShell visualizzerà i file della guida sui criteri di esecuzione sul tuo computer o ti avviserà se non ce ne sono. Ma ti fornirà anche un link che puoi seguire e leggere online.

Per impostare la policy su RemoteSigned , digita semplicemente:

Set-Executionpolicy RemoteSigned

Per impostarlo su Tipo illimitato:

Set-Executionpolicy illimitata(Set-Executionpolicy Unrestricted)

Per verificare l'impostazione corrente per il criterio di esecuzione, digitare: 

Ottieni la politica di esecuzione(Get-Executionpolicy)

Poiché le politiche di esecuzione fanno parte delle strategie di sicurezza di PowerShell, ti verrà chiesto di confermare la modifica. Digita Y solo se sei sicuro di voler procedere.

9. Seleziona-Oggetto

Questo comando viene utilizzato per selezionare oggetti e insiemi di oggetti, oggetti univoci e oggetti in una posizione specifica in una matrice. Esistono diversi parametri che è possibile utilizzare per specificare gli oggetti che si desidera selezionare. Tra questi ci sono proprietà, valori numerici e oggetti di input specifici. 

Per selezionare gli oggetti in base all'attributo della proprietà, dovrai specificare gli attributi come nome, ID o CPU . Puoi anche raggruppare gli attributi, ma devi separarli con virgole quando digiti il ​​comando. Per visualizzare il cmdlet Select-Object in azione, digitare:

Get-Process | Select-Object -Property ProcessName, Id, CPU

PowerShell elencherà tutti i processi correnti e i relativi attributi, come mostrato di seguito .

È ora possibile utilizzare il comando -EpandProperty per ottenere informazioni dettagliate sull'attributo specifico. Se desideri dettagli sulla proprietà Modules del tipo di attributo ProcessName :

Get-Process Chrome | Select-Object -Property ProcessName -ExpandProperty Modules | Format-list

L'output "Format-list" del comando serve a rendere i risultati formattati e leggibili.

10. Esporta-CSV

A volte i comandi di PowerShell generano lunghi elenchi, come abbiamo visto con il cmdlet Get-Command . Liste lunghe e molte informazioni sono difficili da leggere e le vorrai in modo più organizzato. Per fare ciò, esporta tutti i dati in un file CSV . Puoi farlo direttamente in PowerShell utilizzando la funzione Esporta- CSV .

Ad esempio, abbiamo visto che il cmdlet Get-Command fornisce un lungo elenco di tutti i cmdlet disponibili che possiamo usare in PowerShell in quel momento. Puoi combinare Get-Command ed Export-CSV per creare un elenco dettagliato con valori separati da virgole come nome, origine e versione che app come Excel possono riconoscere. 

Per fare ciò, digita il seguente comando nel prompt dei comandi di PowerShell , ma tieni presente che puoi impostare qualsiasi percorso desideri e puoi nominare il tuo file in modo diverso:

Get-Command | Select Name, Source, Version | export-csv D:\AllCommands.csv

Ora puoi aprire l'elenco in Excel e dovresti vedere qualcosa di simile all'immagine seguente.



About the author

Sono un MVP di Windows e lavoro con Windows dal 2007. La mia esperienza include sviluppo software, hardware e suoni e app di Windows. Sono sempre alla ricerca dei modi migliori per migliorare l'esperienza dell'utente nel mio lavoro, quindi se hai bisogno di aiuto per progettare o sviluppare un'applicazione software, posso sicuramente offrire i miei servizi.



Related posts