Condividi questo post:

Un profilo PowerShell è uno script che viene eseguito quando PowerShell si avvia e ha un nome specifico.

PowerShell supporta diversi profili per utenti e programmi host. Quando diciamo programmi host pensiamo principalmente a Windows PowerShell Console e Windows PowerShell ISE. Tuttavia, non crea i profili per te quindi continua a leggere questo articolo e ti mostrerò come creare e personalizzare i profili con esempi impressionanti.

Possiamo creare 3 file di profilo per ogni utente sul sistema, uno per ogni host (Windows PowerShell Console e ISE) e uno per tutti gli host.

Inoltre, è possibile creare 3 file di profilo per tutti gli utenti se vogliamo applicare qualche personalizzazione applicabile a tutti gli utenti.

IMPORTANTE: se hai un’installazione separata di PowerShell versione 6 allora possiamo creare 4 profili aggiuntivi. Due file di profilo per utente e due file di profilo per tutti gli utenti.

Tabella dei contenuti

Comandi di profilo PowerShell, Host, nomi di profilo, posizioni di profilo

Qui c’è una tabella che mostra i tipi di profilo, il comando che può essere usato per verificare se esiste un profilo e crearli se vogliamo, a quale host si applica questo profilo, il nome del file di profilo e la posizione del file di profilo.

# Tipo di profilo Comando Host Nome del file del profilo Localizzazione del file del profilo
1* Utente corrente, Host corrente $profilo Console Microsoft.PowerShell_profile.ps1 $HOME\ Documents\WindowsPowerShell\
2 Tutti gli utenti, host corrente $profile.AllUsersCurrentHost Console Microsoft.PowerShell_profile.ps1 $PSHOME\
3 Utente corrente, tutti gli host $profile.CurrentUserAllHosts Console, ISE Profile.ps1 $HOME\ Documents\WindowsPowerShell\
4 Tutti gli utenti, tutti gli host $profile.AllUsersAllHosts Console, ISE Profile.ps1 $PSHOME
5** Utente corrente, Host corrente $profile ISE Microsoft.PowerShellISE_profile.ps1 $HOME\ Documents\WindowsPowerShell\
6** Tutti gli utenti, Host corrente $profile.AllUsersCurrentHost ISE Microsoft.PowerShellISE_profile.ps1 $PSHOME

Tabella 1 – Tipi di profili PowerShell, comandi, host, nomi e posizioni dei file

* Invece di $profile possiamo usare $profile.CurrentUserCurrentHost.

** Eseguire il comando dalla console di Windows PowerShell ISE.

Per trovare i valori corretti per le variabili $HOME e $PSHOME nella tua installazione di PowerShell, esegui i seguenti comandi:

$HOME

Di solito, il valore di $HOME è C:\Users\user_name

$HOME value
$PSHOME

Di solito, il valore di $PSHOME è C:\Windows\System32\WindowsPowerShell\v1.0

$PSHOME value

Ricorda: se hai un’installazione separata di PowerShell versione 6, allora possiamo creare profili aggiuntivi. Due per l’utente corrente e due per tutti gli utenti.

# Tipo di profilo Comando Host Nome file profilo Profilo Posizione del file
1 CurrentUserCurrentHost $profile Console Microsoft.PowerShell_profile.ps1 $HOME\ Documents\PowerShell\
2 CurrentUserAllHosts $profile.CurrentUserAllHosts profile.ps1 $HOME\ Documents\PowerShell\
3 AllUsersCurrentHost $profile.AllUsersCurrentHost Console Microsoft.PowerShell_profile.ps1 $PSHOME\
4 AllUsersAllHosts $profile.AllUsersAllHosts profile.ps1 $PSHOME\

Tabella 2 – PowerShell v6 Tipi di profili, comandi, host, nomi di file, posizioni di file

Di solito, il valore per $HOME è C:\Users\user_name

$HOME valore per PowerShell v6

Di solito, il valore per $PSHOME è C:\Program Files\PowerShell\6

$PSHOME valore per PowerShell v6

NOTA: La differenza tra i nomi delle cartelle in Documents PowerShell v6 è PowerShell e le cartelle delle versioni precedenti PowerShell è WindowsPowerShell.

Come creare un profilo PowerShell passo dopo passo

Qui vi mostrerò esattamente come creare un profilo PowerShell.

Creazione di un profilo PowerShell per l’utente corrente e l’host corrente

Questo è il profilo PowerShell predefinito di Windows.

Segui questi passi per creare un profilo PowerShell per la Console come Host e utente corrente:

Passo 1: Apri la Console PowerShell di Windows (Host corrente).

Window PowerShell Console

Passo 2: Per prima cosa, controlleremo se il profilo esiste o meno nella nostra installazione PowerShell. Digita il seguente comando nella Console di Window PowerShell, e premi INVIO.

Test-Path $PROFILE

Ricorda: valore del parametro per Test-Path CmdLet otteniamo dalla Tabella 2 – colonna Comando. ($profilo, $profilo.CurrentUserAllHosts, ecc)

Passo 3: Se il risultato del comando precedente è falso, il profilo non esiste quindi vai al passo 4. Se il risultato è vero, il file di profilo esiste quindi vai al passo 5

Il file di profilo non esiste (falso)

Passo 4: Poiché il profilo non esiste ne creeremo uno con il seguente comando che digiterai e premerai INVIO.

New-Item -Type File -Force $PROFILE
Il file Profilo è stato creato
Microsoft.PowerShell_profile.ps1 – Profilo per l’utente corrente e Console come host

Step 5: Il profilo è stato creato e possiamo aprire il file Profilo in PowerShell ISE con il seguente comando, e premere ENTER.

ise $PROFILE
Aprire Windows PowerShell ISE con il file Profilo

Passo 6: Il file Profilo vuoto è stato aperto in Windows PowerShell ISE

Windows PowerShell ISE ha aperto un file Profilo vuoto Microsoft.PowerShell_profile.ps1

Passo 7: Continua all’esempio 1 per vedere come personalizzare questo profilo.

Creazione di un profilo PowerShell per l’utente corrente e tutti gli host

Seguire questi passi per creare un profilo PowerShell:

Passo 1: Aprire la console Windows PowerShell (Questo è solo un host di scelta per eseguire i comandi e possiamo fare questi passi anche da Windows PowerShell ISE).

Passo 2: Per prima cosa, controlleremo se il profilo esiste o meno nella nostra installazione PowerShell. Digitare il seguente comando nella console di Window PowerShell, e premere INVIO.

Test-Path $PROFILE.CurrentUserAllHosts

Ricorda: valore del parametro per Test-Path CmdLet otteniamo dalla tabella 2 – colonna di comando. ($profilo, $profilo.CurrentUserAllHosts, ecc)

Passo 3: Se il risultato del comando precedente è falso, il profilo non esiste quindi vai al passo 4. Se il risultato è vero, il file di profilo esiste quindi vai al passo 5

Il file di profilo non esiste (falso)

Passo 4: Poiché il profilo non esiste ne creeremo uno con il seguente comando che digiterai e premerai INVIO.

New-Item -Type File -Force $PROFILE.CurrentUserAllHosts
Il file di profilo è stato creato
File profile.ps1 – Profilo per l’utente corrente e tutti gli host

Passo 5: Il profilo è stato creato e possiamo aprire il file profilo in PowerShell ISE con il seguente comando, e premere INVIO.

ise $PROFILE.CurrentUserAllHosts

Passo 6: Il file profilo vuoto è stato aperto in Windows PowerShell ISE

Windows PowerShell ISE ha aperto un file profilo.ps1 vuoto

Passo 7: Continua all’esempio 2 per vedere come personalizzare il profilo.

Ripetiamo il processo per altri tipi di profilo l’unica cosa è usare il valore corretto della variabile nella colonna Command dalla Tabella 1 – PowerShell Profile types, commands, hosts, file names, file locations.

  • $profile.AllUsersCurrentHost
  • $profile.AllUsersAllHosts

Rimanere: Quando vuoi creare un profilo per Windows PowerShell ISE come host devi aprire Windows PowerShell ISE e seguire i passi eseguendo i comandi da Windows PowerShell ISE Console (guarda lo screenshot qui sotto)

Windows PowerShell ISE Console e il rispettivo file di profilo per ISE come host

Come modificare il profilo di Windows PowerShell con esempi

Esempio 1 – Profilo per Console come Host e Utente corrente (Utente corrente – Host corrente)

Nome profilo: Microsoft.PowerShell_profile.ps1
Localizzazione del profilo: $Home\Documents\WindowsPowerShell
Utilizzato per: In questo esempio, ho cambiato i colori dello sfondo del carattere per essere più leggibile.

Qui c’è il codice nel file di profilo Microsoft.PowerShell_profile.ps1. Basta copiare il codice nel file di profilo e salvare le modifiche per avere lo stesso schema di colori o personalizzarlo a proprio piacimento.

Set-PSReadLineOption -colors @{ Operator = 'Cyan' Parameter = 'Cyan' String = 'White'}
Codice del file di profilo Microsoft.PowerShell_profile.ps1

In alcuni vecchi sistemi l’impostazione di Set-PSReadLineOption CmdLet era un po’ diversa come nell’esempio seguente.

Set-PSReadlineOption -TokenKind String -ForegroundColor MagentaSet-PSReadlineOption -TokenKind Operator -ForegroundColor CyanSet-PSReadlineOption -TokenKind Parameter -ForegroundColor Cyan 

I colori del font sono stati cambiati da questo…

Colori dei font della console PowerShell senza personalizzazione del profilo.

… a questo.

Colori font della console PowerShell dopo la personalizzazione del profilo.

Utilizza Get-PSReadLineOption CmdLet per vedere gli argomenti di colore validi e i valori degli argomenti correnti (colori).

Get-PSReadLineOption CmdLet e lo schema dei colori correnti

Esempio 2 – Profilo per entrambi Windows PowerShell Console e ISE come host (Utente corrente – Tutti gli host)

Nome del profilo: profile.ps1
Localizzazione del profilo: $Home\Documents\WindowsPowerShell\
Usato per: Quando vuoi personalizzare sia Windows PowerShell Console che ISE simultaneamente o eseguire funzioni avanzate o CmdLets sia in PowerShell Console che in ISE.

In questo esempio, carico i miei moduli PowerShell per alcuni CmdLets che ho scritto e che fanno parte dell’Efficiency Booster PowerShell Project. Questo progetto è una libreria di miei CmdLets organizzati in diversi moduli e vi consiglio vivamente di scaricare il file zip dei file del progetto e testare nel vostro ambiente e potermi seguire negli articoli di questo blog.

Ecco i comandi per importare i moduli e il contenuto del file profilo.

Import-Module 02utilsImport-Module 03commonImport-Module 04maintenance
Profile.ps1 profile file code

Possiamo testare rapidamente che i moduli importati siano realmente caricati quando apriamo la console PowerShell utilizzando il seguente comando:

Get-Module -ListAvailable
I moduli importati nel file di profilo sono caricati nell’ambiente PowerShell Console

Per capire meglio PowerShell Profiles, Modules e CmdLets interlinking leggi il seguente sottotitolo di questo post How To Organize Your Own PowerShell CmdLets in PowerShell Modules And Which Profile To Use To Organize That Structure e How We Link Together PowerShell Profile, Module, And CmdLet.

Esempio 3 – Profilo per ISE come Host (Utente corrente – Host corrente)

Nome profilo: Microsoft.PowerShellISE_profile.ps1
Posizione del profilo: $Home\Documents\WindowsPowerShell
Utilizzato per: In questo esempio, ho importato il modulo che contiene CmdLets che sarà Add-ons per Window PowerShell ISE.

Ecco il comando che deve essere copiato nel file di profilo.

Import-Module 09addons
Codice del file di profilo Microsoft.PowerShellISE_profile.ps1

Come risultato, avremo due Add-ons in Windows PowerShell ISE. Leggete questi due articoli per sapere di più su come codificarli.

  • Come scrivere funzioni avanzate o istruzioni con PowerShell (veloce)
  • Come scrivere funzioni o istruzioni con PowerShell (veloce)
Windows PowerShell ISE Add-ons

Possiamo testare rapidamente che i moduli importati siano realmente caricati quando apriamo la console PowerShell utilizzando il seguente comando:

Get-Module -ListAvailable
Importato modulo in file profilo è caricato nell’ambiente PowerShell ISE

NOTA: Windows PowerShell ISE importa quattro modelli da due file profilo ( profilo.ps1 e Microsoft.PowerShellISE_profile.ps1 ).

Esempio 4 – Profilo sia per Windows PowerShell Console che per ISE come host (tutti gli utenti – tutti gli host)

Nome profilo: profile.ps1
Posizione profilo: $PSHOME\
Utilizzato per: In questo esempio, ho solo cambiato il titolo di Window PowerShell Console e ISE sia per l’utente corrente che per l’amministratore.

Ecco il codice nel file Profile:

$NTIdentity = ::GetCurrent()$NTPrincipal = new-object Security.Principal.WindowsPrincipal $NTIdentity$IsAdmin = $NTPrincipal.IsInRole(::Administrator)$hostversion="v$($Host.Version.Major).$($Host.Version.Minor)"$hostname = $host.NameIF ($IsAdmin){ if($hostname -eq "ConsoleHost") { $host.ui.RawUI.WindowTitle = "Your Text in Windows PowerShell $hostversion - Running as ADMINISTRATOR" } else { $host.ui.RawUI.WindowTitle = "Your Text in Windows PowerShell ISE $hostversion - Running as ADMINISTRATOR" }}Else{ if($hostname -eq "ConsoleHost") { $host.ui.RawUI.WindowTitle = "Your Text in Windows PowerShell $hostversion" } else { $host.ui.RawUI.WindowTitle = "Your Text in Windows PowerShell ISE $hostversion" }}

Puoi vedere che entrambi i titoli PowerShell Console e ISE hanno un testo personalizzato, il nome dell’host e la versione di PowerShell nel titolo.

Testo personalizzato per il titolo della console
Testo personalizzato per il titolo della console quando viene eseguito come amministratore
Testo personalizzato per Windows PowerShell ISE Title

Comandi PowerShell utili da conoscere riguardo ai profili

Qui ci sono alcuni utili comandi PowerShell che ti aiuteranno ad ottenere informazioni sui profili.

Come risultato dell’esecuzione di uno qualsiasi dei comandi di profilo, si otterrà la posizione del file di profilo.

$profile$profile.AllUsersCurrentHost$profile.CurrentUserAllHosts$profile.AllUsersAllHosts
Comandi di profilo

IMPORTANTE: Quando vuoi trovare la posizione del file di profilo per Windows PowerShell ISE come host devi aprire Windows PowerShell ISE ed eseguire i comandi di profilo da Windows PowerShell ISE Console

Usa Test-Path CmdLet per controllare se il file di profilo esiste sul sistema o no. Se ottieni True come risultato il profilo esiste e false significa che il file di profilo non esiste. Usa i comandi dalla Tabella 1 – Tipi di profilo PowerShell, comandi, host, nomi di file, posizioni di file per controllare altri tipi di profilo se esistono o no.

Test-Path $PROFILE

Questa linea di codice creerà un file di profilo. Usa i comandi dalla Tabella 1 – Tipi di profilo PowerShell, comandi, host, nomi di file, posizioni di file per creare altri tipi di profilo.

New-Item -Type File -Force $PROFILE.CurrentUserAllHosts

Se vuoi leggere il contenuto del file di profilo in Notepad o in Window PowerShell ISE allora usa questi due comandi.

ise $PROFILEnotepad $PROFILE

Personalmente preferisco Windows PowerShell ISE poiché è un ambiente più conveniente per scrivere codice PowerShell.

Utilizza questa linea di codice per ottenere le posizioni dei profili per tutti i tipi di profilo.

$profile | Get-Member -Type NoteProperty | Select-Object Definition
Posizioni dei file di profilo

Controlla queste due variabili per ottenere rispettivamente la posizione dell’installazione di PowerShell e della directory home.

$pshome$home 

Come scegliere quale file di profilo usare

Se usi più applicazioni host come Windows PowerShell Console e ISE, metti tutte le personalizzazioni nel profilo $PROFILE.CurrentUserAllHosts per l’utente attualmente connesso. Per esempio, ho creato i miei CmdLets organizzati in Moduli quindi ho messo i comandi per caricare questi moduli in questo profilo poiché voglio che i moduli siano caricati sia quando apriamo PowerShell Console che ISE. Guarda l’esempio 2 per l’illustrazione.

Se vuoi fare una personalizzazione specifica per l’applicazione host metti tutto il codice di personalizzazione in un profilo specifico per quell’applicazione host. Per esempio, cambio il colore di sfondo dei caratteri della console PowerShell in modo che siano più visibili o ho caricato moduli che sono Add-ons per ISE. L’ho mostrato nell’esempio 1 per PowerShell Console e nell’esempio 3 per PowerShell ISE.

Se hai bisogno di personalizzare PowerShell per molti utenti e sei un amministratore, segui questi consigli:

  • Memorizza la personalizzazione più comune in $PROFILE.AllUsersAllHosts poiché questo è il profilo più ampio
  • Se vuoi personalizzare Windows PowerShell per tutti gli utenti ma in modo specifico per un’applicazione host. Per esempio, una personalizzazione diversa per Windows PowerShell Console e un’altra personalizzazione per Windows PowerShell ISE allora metti il codice nei profili $PROFILE.AllUsersCurrentHost
  • Scrivi il codice per utenti particolari nei profili specifici dell’utente. Fondamentalmente, questo significa usare il profilo $PROFILE.CurrentUserAllHosts o $PROFILE.CurrentUserCurrentHost.

Come eseguire Console o ISE senza profili caricati

Aprire il dialogo di esecuzione Win + R e aprire PowerShell con l’opzione -NoProfile.

PowerShell.exe -NoProfile

Attenzione: PowerShell Load Time

Con un profilo più grande e complesso, può iniziare ad avere un effetto sulla velocità di apertura di PowerShell. Per risolvere se il tuo profilo è responsabile dei tempi di caricamento di PowerShell insufficienti, apri il dialogo di esecuzione Win + R e apri PowerShell con l’opzione -NoProfile.

PowerShell.exe -NoProfile

Profili e sessioni remote

I profili PowerShell non vengono eseguiti automaticamente nelle sessioni remote, quindi i comandi che i profili aggiungono non sono presenti nella sessione remota. Inoltre, la variabile automatica $PROFILE non è popolata nelle sessioni remote.

Per eseguire un profilo in una sessione, usate il comando Invoke-Command CmdLet.

Per esempio, il seguente comando esegue il profilo “Current user, Current Host” dal computer locale nella sessione in $s.

Invoke-Command -Session $s -FilePath $PROFILE

Come organizzare i propri CmdLet PowerShell in Moduli e Profili PowerShell

Per farti capire il legame tra Profilo PowerShell, Modulo e CmdLet ho creato un progetto Efficiency Booster PowerShell con molti dei miei CmdLet organizzati in un mucchio di Moduli che vengono caricati in ogni sessione PowerShell con il profilo PowerShell ogni volta che apro Windows PowerShell Console o ISE.

Sentitevi liberi di scaricare il file zip che contiene il codice del progetto in modo da poterlo seguire facilmente. Nel file ReadMe.txt c’è una spiegazione dei passi di installazione e personalizzazione quindi per favore leggi le istruzioni in quel file. Ancora meglio puoi leggere le istruzioni di installazione e personalizzazione leggendo il seguente articolo How To Install And Configure PowerShell: CmdLet, Moduli, Profili.

Utilizzerò l’analogia libreria, scaffali e libri per spiegare il legame tra Powershell Profilo, Modulo e CmdLet.

Per esempio, immaginate di voler imparare di più su PowerShell Scripting e di voler comprare alcuni libri sull’argomento dalla libreria.

Entri nella libreria e vedi molti scaffali con diverse etichette per dipartimenti di libri come Arte, Business, Computer, Letteratura, Viaggi, ecc. Naturalmente, vai verso gli scaffali etichettati Computer e lì trovi il libro che spiega PowerShell Scripting che vuoi comprare.

Torniamo ora al mondo PowerShell e colleghiamo la storia dell’analogia con PowerShell:

  • Il CmdLet che usiamo fornito con PowerShell o qualche nostro CmdLet scritto è il libro.
  • Il codice di quel CmdLet è il contenuto del libro.
  • PowerShell Module è lo scaffale della libreria di qualche reparto della libreria come per esempio lo scaffale della libreria Computers dove è messo il nostro libro.
  • Infine, PowerShell Profile è la libreria stessa.

Così ogni volta che apriamo Windows PowerShell Console o ISE apriamo la nostra sessione e con quella sessione i file di profilo da caricare e personalizzare sono stati fatti per impostare il nostro ambiente PowerShell nel modo in cui vogliamo essere.

Nel caso di Moduli e CmdLets. Il file di profilo importerà i moduli e il modulo caricherà ogni script CmdLet che appartiene a quel modulo.

Siccome mi piace usare i miei CmdLet sia in Windows PowerShell Console che nelle applicazioni host ISE preferisco creare un $profile.CurrentUserAllHosts che non è altro che il file Profile.ps1 creato in:

  • $Home\ Documents\WindowsPowerShell\ per PowerShell versione 5.1 e precedenti
  • $Home\ Documents\PowerShell\ per PowerShell versione 6.0.

Come colleghiamo insieme PowerShell Profile, Module, e CmdLet

Ecco una breve descrizione di questa struttura fatta in PowerShell

  • Crea un profilo PowerShell
  • Crea una cartella Module e una struttura di file
  • Personalizza il profilo per importare i moduli necessari
  • Crea lo script PowerShell CmdLet
  • Scrivi il codice della funzione CmdLet
  • Personalizza il file Module per importare lo script CmdLet

Io illustrerò questo processo con esempi di Efficiency Booster PowerShell Project di Profile, Moduli e CmdLet in modo che sia più facile per chiunque capire l’intero processo. Quindi incoraggio ancora una volta tutti a installare il file zip fornito.

Segui questi passi per creare un profilo PowerShell, un modulo, un CmdLet e collegarli insieme:

Passo 1: Aprire la console Windows PowerShell

Passo 2: Per prima cosa, controlleremo se il profilo esiste o meno nella nostra installazione PowerShell. Digita il seguente comando in Window PowerShell, e premi INVIO

Test-Path $PROFILE.CurrentUserAllHosts

Passo 3: Se il risultato del comando precedente è falso, il profilo non esiste quindi vai al passo 4. Se il risultato è vero, il file di profilo esiste quindi vai al passo 5

Passo 4: Dato che il profilo non esiste ne creeremo uno con il seguente comando che digiterai e premerai INVIO.

New-Item -Type File -Force $PROFILE.CurrentUserAllHosts

Passo 5: Il profilo è stato creato e possiamo aprire il file Profilo in PowerShell ISE con il seguente comando, e premere INVIO.

ise $PROFILE.CurrentUserAllHosts

Passo 6: Il file Profile è stato aperto in PowerShell ISE.

Passo 7: Ora dobbiamo creare una struttura di cartelle Module e i file necessari.

Passo 8: Nella cartella dove abbiamo creato il nostro file Profile creare una cartella Module con il nome esatto Modules. Qui terremo la struttura delle cartelle di tutti i nostri Moduli.

Cartella Moduli

Step 9: Nella cartella Moduli crea le cartelle per ogni Modulo che vuoi avere. Per esempio, ho creato i seguenti moduli in Efficiency Booster PowerShell Project.

Moduli di Efficiency Booster PowerShell Project

Step 10: In ogni cartella Module creiamo il file con estensione .psm1 e lo stesso nome esatto della cartella Module. Per esempio, nella cartella 03common, creiamo il file 03common.psm1

File psm1 del modulo PowerShell

Passo 11: Opzionalmente possiamo creare un file manifest (.psd1) per ogni modulo che descriverà ulteriormente quella cartella.

Step 12: Nella stessa cartella del modulo, creiamo il file con estensione .ps1 (Regular PowerShell script file) dove scriveremo il codice per il nostro CmdLet. Per esempio, possiamo creare il file GetCPUInfo.ps1 dove scriveremo il codice per il nostro Get-CPUInfo CmdLet.

File script Get-CPUInfo CmdLet

Step 13: Ora siamo pronti per scrivere il nostro codice CmdLet e scriverlo. Sentiti libero di guardare l’esempio Get-CPUInfo e altri CmdLet del progetto Efficiency Booster PowerShell. Nei post futuri, scriverò più dettagliatamente su ogni CmdLet del progetto. Per ora, scarica il codice sorgente del progetto qui.

Codice sorgente di Get-CPUInfo CmdLet

Step 14: Collega uno script CmdLet al modulo PowerShell corretto. Apri il file .psm1 del modulo e scrivi questa linea di codice:
. $psScriptRoot\NameOfCmdLetScriptFile.ps1
Per esempio, per Get-CPUInfo CmdLet scriviamo questa linea di codice nel file 03common.psm1 file:

. $psScriptRoot\GetCPUInfo.ps1 
Il collegamento tra il file script CmdLet e il modulo

Passo 15: Nel file script Profilo, importiamo il Modulo che contiene il nostro file script CmdLet quindi scriviamo questo comando nel file profilo.
Import-Module ModuleName
Per esempio, il nostro Get-CPUInfo CmdLet fa parte del modulo 03common quindi scriviamo questo codice nel profilo:

Import-Module 03common
Il collegamento tra Profilo e Modulo

Step 16: Ripetiamo i passi 9 -15 per ogni Modulo e CmdLet che vogliamo avere nel nostro profilo e che venga caricato con ogni sessione PowerShell che avviamo.

Step 17: Testiamo che tutti i moduli importati sono caricati quando apriamo un certo host. Possiamo elencare i moduli usando il seguente comando:

Get-Module -ListAvailable
Moduli caricati in ambiente console PowerShell

Step 18: Possiamo testare che tutti i CmdLets all’interno di ogni modulo siano caricati nell’ambiente. Ecco il comando di esempio utile:

Get-Command -Module 02utils
Moduli caricati in ambienti PowerShell Console per il modulo 02utils

Articoli utili sul profilo PowerShell

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.