Netwrix 1Secure offre visibilità unificata su dati e identità - gratuito per 14 giorni con accesso completo.Inizia una prova gratuita

Centro risorseeBook
Tutorial di scripting di Windows PowerShell

Tutorial di scripting di Windows PowerShell

La scrittura di script PowerShell ti consente di automatizzare attività ripetitive di Windows e Active Directory, dalla generazione di report all'aggiornamento di massa degli account. Questo tutorial inizia dalle basi: variabili, pipeline, cicli e funzioni, per poi arrivare a script che puoi eseguire oggi stesso. Scarica la guida completa per walkthrough dettagliati sulla gestione degli account e dei computer AD, le attività del file system e la pianificazione degli script, così avrai script funzionanti a portata di mano quando ti servono.

Scarica il tutorial di scripting dei comandi PowerShell (PDF)

Come si scrive uno script PowerShell?

Uno script PowerShell è un file di testo semplice salvato con l'estensione .ps1. Puoi scriverne uno in qualsiasi editor di testo, anche se la maggior parte delle persone usa Visual Studio Code con l'estensione PowerShell per evidenziazione della sintassi, completamento automatico e debug integrato. Scrivi i tuoi comandi uno per riga, salva il file ed eseguilo.

Inizia in piccolo. Uno script di due righe che ottiene un valore e lo stampa ti insegna il ciclo base su cui si basa ogni utente PowerShell: scrivi, esegui, modifica. Aggiungi un commento con un # all'inizio di una riga per indicare cosa fa una sezione, poiché gli script che leggi mesi dopo raramente si spiegano da soli. Questo tutorial costruisce ogni concetto sul precedente, così un principiante può seguirlo dall'inizio alla fine.

Quali sono i comandi base di PowerShell?

I comandi di PowerShell, chiamati cmdlet, seguono un modello verbo-sostantivo che li rende facili da leggere e intuire: Get-, Set-, New-, e Remove-. Una manciata di cmdlet copre la maggior parte delle attività del primo giorno:

  • Get-Help: cerca la sintassi e gli esempi per qualsiasi cmdlet
  • Get-Command: elenca tutti i cmdlet disponibili nella tua sessione
  • Get-Member: visualizza le proprietà e i metodi di un oggetto
  • Get-Process: visualizza i processi in esecuzione
  • Get-ChildItem: elenca file, cartelle o chiavi del registro

Digita Get-Help <cmdlet name> -Examples ogni volta che hai bisogno di un ripasso, poiché l'aiuto integrato di PowerShell copre quasi tutti i cmdlet disponibili. Il cheat sheet li raggruppa per attività, così non devi cercare a metà script.

Come si esegue uno script PowerShell?

Apri PowerShell, vai alla cartella dello script ed eseguilo con .\scriptname.ps1. Se appare un messaggio che dice che lo script non può essere caricato perché l'esecuzione degli script è disabilitata, è la policy di esecuzione di PowerShell a bloccarlo, non il tuo script.

La policy di esecuzione ha diversi livelli, da bloccato a completamente aperto, e scegliere quello sbagliato può lasciarti bloccato o esporre i tuoi sistemi. La guida illustra ogni livello, quale offre il giusto equilibrio per lo scripting quotidiano e il comando esatto per impostarlo in sicurezza.

Come si usano variabili, cicli e funzioni?

Le variabili memorizzano valori con un $ prefisso, come $name = "Server01". Possono contenere testo, numeri o interi oggetti, e PowerShell determina il tipo per te.

I loop ripetono un'azione su una raccolta. Un foreach è il loop a cui farai più spesso riferimento:

      foreach ($user in $users) {
    Write-Host $user.Name
}
      

Le funzioni raggruppano la logica riutilizzabile, così la scrivi una volta e la richiami spesso:

      function Get-Greeting($name) {
    "Hello, $name"
}
      

Ogni concetto ha un breve esempio eseguibile che puoi incollare e adattare.

Cosa puoi automatizzare con PowerShell in Active Directory?

Il modulo ActiveDirectory di PowerShell, installato con RSAT (Remote Server Administration Tools), aggiunge cmdlet creati appositamente per le attività di directory. Vantaggi comuni:

Gli esempi pratici in questo tutorial mostrano il modello per ciascuno, così puoi adattarli al tuo ambiente senza partire da uno script vuoto.

Per i team che preferiscono non mantenere script a lungo termine, gli strumenti appositamente creati coprono lo stesso AD reporting e change tracking senza codice personalizzato.

Domande frequenti

Condividi su