Che cos’è Windows PowerShell?
Windows PowerShell è uno strumento di automazione delle attività sviluppato da Microsoft per aiutare gli amministratori a ridurre il carico di lavoro. Ti aiuta ad automatizzare semplici attività e processi in Windows, aiutandoti a concentrarti sul lavoro che richiede maggiore complessità e creatività.
Mentre molte persone hanno visto e utilizzato il prompt dei comandi, meno hanno sentito parlare di PowerShell. In questo articolo, vedremo come esattamente PowerShell aiuta i suoi utenti, oltre ad alcune delle cose interessanti che puoi fare con esso.
Che cos’è Windows PowerShell?
Prima di immergerci in PowerShell, in primo luogo inchiodiamo un’altra domanda: “Che cos’è una shell?”
Una shell è un programma per computer che riceve i comandi dalla tastiera, li interpreta e li inoltra al sistema operativo per l’esecuzione. In sostanza, funge da interfaccia tra te e il sistema operativo. Può essere basato su GUI ( interfaccia utente grafica ) o può essere costruito su una CLI (interfaccia a riga di comando).
Sebbene la shell sia stata utilizzata sin dal lancio del sistema operativo Multics nel 1969, Windows ha introdotto la sua versione, la Shell, nel novembre 1985. Era una shell di base utile per la gestione dei file, chiamata MS-DOS Executive. Seguirono gli sviluppi di questa shell di base, ma c’era sempre bisogno di qualcosa di più potente.
In precedenza nella storia di Windows, gli utenti facevano ricorso a diversi strumenti per l’amministrazione e l’automazione del sistema. Nel 2006, come soluzione è stato introdotto un importante miglioramento del concetto di Shell: Windows PowerShell.
Windows PowerShell consente di eseguire varie operazioni, dall’automazione di attività ripetitive, amministrazione di rete e così via, ad attività che richiedono maggiore attenzione e creatività (come la pubblicazione di contenuti di siti Web, la progettazione e così via).
Questo non solo ti fa risparmiare tempo, ma ti dà anche un maggiore controllo sul sistema operativo e sui suoi processi.
Che cos’è un cmdlet di PowerShell?
Ora che hai familiarità con PowerShell, esaminiamo uno degli aspetti più importanti di PowerShell: il cmdlet .
I cmdlet (pronunciati command-let) sono comandi di Windows PowerShell leggeri e potenti. Esistono come elementi costitutivi che è possibile utilizzare per eseguire azioni specifiche come la copia e lo spostamento di file o come parte di uno script PowerShell più grande e avanzato.
Il cmdlet Get-Help , ad esempio, è il cmdlet più utile in quanto consente di vedere cosa fa un particolare cmdlet, esaminare i suoi parametri e mostrare i vari modi in cui viene utilizzato il cmdlet.
Simile a Get-Help , Get-Command è un altro cmdlet che puoi utilizzare per risolvere vari problemi dalla shell. Nello specifico, mostra tutti i comandi installati sul tuo sistema. I comandi visualizzati includono cmdlet, funzioni, alias, filtri, script e applicazioni. Quando viene utilizzato con i parametri, ti mostrerà tutti i comandi specifici associati a quel parametro.
Ad esempio, il seguente comando acquisirà i comandi di tutti i tipi disponibili sul tuo computer locale e li visualizzerà:
Get-Command *
Il Get-Command con il parametro ListImported , d’altra parte, riceverà solo i comandi dalle sessioni correnti.
Get-Command -ListImported
Come avviare Windows PowerShell
Per avviare Windows PowerShell, apri la barra di ricerca del menu Start, digita Windows PowerShell ed esegui seleziona Esegui come amministratore .
Questo avvierà il programma PowerShell sul tuo computer. In alternativa, puoi avviarlo tramite la finestra di dialogo Esegui. Premi il tasto Windows + R sulla tastiera, digita powershell e premi Invio per avviare PowerShell.
Come utilizzare Windows PowerShell
Come spiegato sopra, PowerShell è un’applicazione che ti aiuta ad automatizzare attività ripetitive e gestire semplici attività di amministrazione di Windows e, quindi, ti aiuta a risparmiare tempo. Di seguito, definiamo alcuni dei modi più utili per utilizzare PowerShell a tuo vantaggio.
1. Creazione di script utilizzando Windows PowerShell
Uno script è un insieme di istruzioni, una specie di breve programma, che un programma più grande esegue durante la sua esecuzione.
Con PowerShell, puoi creare facilmente uno script e utilizzarlo di nuovo in futuro in caso di necessità. Esistono diversi modi per creare uno script, ma per ora ci concentreremo sul metodo più semplice: creare uno script PowerShell con Blocco note.
Per creare uno script di PowerShell, segui i passaggi seguenti:
- Digita il blocco note nella barra di ricerca del menu Start e seleziona la corrispondenza migliore.
- In Blocco note, scrivi o incolla lo script che desideri utilizzare. Per esempio:
Write-Host "I make memes; Therefore I am."
Ora, fai clic sull’opzione File e seleziona Salva con nome. Immettere un nome pertinente e fare clic su Salva .
Per eseguire lo script, esegui PowerShell come amministratore. Quindi, digita il comando dal basso e premi Invio .
Set-ExecutionPolicy RemoteSigned
Ciò cambierà i criteri di esecuzione sulla tua macchina e ti consentirà di eseguire script su PowerShell. Tieni presente che si tratta di una modifica permanente e che la restrizione dei criteri di esecuzione è una funzionalità di sicurezza che può impedirti di eseguire script dannosi. Se stai copiando e incollando script di PowerShell da Internet senza comprendere appieno cosa fa lo script, questa è una funzionalità utile.
Infine, digita A e premi Invio, quindi digita questo comando per eseguire lo script, sostituendo mshaa con il tuo nome utente.
& "C:UsersmshaaDesktop
cript.txt"
Se hai seguito i comandi in ordine, lo script di PowerShell verrà eseguito senza intoppi.
Ricorda, devi eseguire PowerShell come amministratore. Altrimenti, non sarai in grado di modificare la politica di esecuzione predefinita sul tuo sistema che interrompe l’esecuzione di script casuali sul tuo sistema.
Verrà invece chiamata un’eccezione e, come tutte le eccezioni, interromperà l’esecuzione del programma a metà. La tua interfaccia sarà simile a questa:
2. Eliminare il contenuto di un file specifico
Ti sei mai trovato in una situazione in cui dovevi eliminare tutto il vecchio contenuto da un file, ma volevi mantenere intatto il file stesso? In tal caso, puoi utilizzare il comando clear-content da PowerShell per farlo.
Clear-Content C:TempTestFile.txt
Scambia il percorso del file che desideri cancellare.
3. Eseguire un comando in un computer remoto
È inoltre possibile utilizzare Windows PowerShell per eseguire un comando su uno o più computer remoti. Questa funzionalità di PowerShell è nota come PowerShell Remoting. Tutto ciò di cui hai bisogno è un unico computer alla tua estremità e una connessione Internet affidabile.
Tuttavia, prima di eseguire il comando, dovrai prima stabilire una connessione remota tra più computer. È possibile utilizzare il comando PSSession per eseguire comandi remoti.
Enter-PSSession -ComputerName RemotePCName -Credential UserID
Dopo esserti connesso al computer, puoi eseguire i comandi di PowerShell come se fossi su un sistema locale.
Se desideri eseguire un comando su più computer remoti, esegui questo comando:
Invoke-Command -ComputerName Server01, Server02 -FilePath c:ScriptsDiskCollect.ps1
Questo frammento eseguirà lo script DiskCollect.ps1 sui computer remoti, Server01 e Server02. Per un’introduzione dettagliata ai comandi remoti, consulta la guida ufficiale dei comandi remoti di Microsoft .
4. PowerShell per una scansione malware
Puoi eseguire una scansione antimalware sul tuo sistema direttamente tramite Windows PowerShell. Per eseguire una scansione rapida, digita i seguenti comandi in PowerShell e premi Invio :
Start-MpScan -ScanType QuickScan
Ma a volte, una rapida scansione non è sufficiente. Per fortuna, puoi anche eseguire una scansione completa da PowerShell.
Start-MpScan -ScanType FullScan
Tieni presente che la scansione completa potrebbe richiedere del tempo, quindi sarebbe opportuno eseguirla in background. Per questo, usa invece questo comando:
Start-MpScan -ScanType FullScan -AsJob
Questo eseguirà una scansione completa del malware in background mentre gestisci altre attività. Per ulteriori informazioni, consulta la nostra guida completa all’uso di PowerShell per eseguire la scansione del tuo computer alla ricerca di malware .
5. Armeggiare con file e cartelle
Puoi persino gestire i file e le cartelle del tuo sistema direttamente da un’unica posizione con l’aiuto di Windows PowerShell. Ci sono molte cose diverse che puoi fare, come spostare, aprire, rinominare, ecc. Come con i comandi precedenti, cambia mshaa per il tuo nome utente.
Ridenominazione di file e cartelle
È possibile rinominare facilmente file e cartelle utilizzando il cmdlet Rename-Item in PowerShell.
Rename-Item c:UsersmshaaDesktopMemesAreLame.xls MemesAreCool.xls
Spostamento di file e cartelle
Proprio come la ridenominazione, puoi anche utilizzare PowerShell per spostare i file e le cartelle del tuo computer.
Move-Item c:UsersmshaaDesktopMemesAreLame.xls c:UsersmshaaDocuments
Apertura di file
Usa il comando seguente per aprire qualsiasi file casuale sul tuo sistema:
Invoke-Item c:MakeUseOfHelloWorld.txt
Inoltre, puoi aprire più file in una volta sola dopo aver modificato leggermente il comando precedente.
Invoke-Item c:MakeUseOf*.txt
La sostituzione del nome di un file specifico con l’asterisco (*) consentirà al cmdlet Invoke-Item di aprire più file contemporaneamente.
Rendi Windows PowerShell il tuo alleato
Si spera che questa breve guida ti aiuti a iniziare con PowerShell. Essendo un’applicazione gratuita di Microsoft, è uno strumento molto utile da tenere nella borsa degli strumenti di Windows per rendere le operazioni di Windows più fluide e automatizzate.