En aquest tema, aprendrem a crear i utilitzar funcions i scripts en PowerShell. Les funcions i els scripts són eines poderoses que ens permeten automatitzar tasques repetitives i organitzar el nostre codi de manera més eficient.
Continguts
Introducció a les Funcions
Les funcions en PowerShell són blocs de codi reutilitzables que poden ser cridats des de qualsevol lloc del nostre script. Les funcions ens permeten dividir el nostre codi en parts més petites i manejables, facilitant la seva lectura i manteniment.
Avantatges de les Funcions
- Reutilització del Codi: Evita la duplicació de codi.
- Organització: Facilita la comprensió i manteniment del codi.
- Modularitat: Permet dividir el codi en mòduls més petits i manejables.
Creació de Funcions
Per crear una funció en PowerShell, utilitzem la paraula clau function
seguida del nom de la funció i el bloc de codi que defineix la funció.
Sintaxi Bàsica
Exemple
Paràmetres de les Funcions
Les funcions poden acceptar paràmetres que permeten passar dades a la funció. Això fa que les funcions siguin més flexibles i reutilitzables.
Sintaxi amb Paràmetres
Exemple amb Paràmetres
function Saluda { param ( [string]$Nom ) Write-Output "Hola, $Nom! Benvingut a PowerShell!" } # Cridar la funció amb un paràmetre Saluda -Nom "Joan"
Scripts en PowerShell
Un script en PowerShell és un fitxer que conté una sèrie de comandes i funcions que es poden executar com una unitat. Els scripts ens permeten automatitzar tasques complexes i repetitives.
Creació d'un Script
- Crear un Fitxer de Script: Els scripts de PowerShell tenen l'extensió
.ps1
. - Escriure el Codi: Introduir les comandes i funcions dins del fitxer.
- Guardar el Fitxer: Guardar el fitxer amb l'extensió
.ps1
.
Exemple de Script
# Fitxer: salutacio.ps1 function Saluda { param ( [string]$Nom ) Write-Output "Hola, $Nom! Benvingut a PowerShell!" } # Cridar la funció Saluda -Nom "Joan"
Execució de Scripts
Per executar un script en PowerShell, utilitzem la comanda .\
seguida del nom del fitxer de script.
Exemple d'Execució
Configuració de l'Execució de Scripts
Per defecte, PowerShell pot tenir restriccions en l'execució de scripts. Podem canviar la política d'execució utilitzant la comanda Set-ExecutionPolicy
.
Exercicis Pràctics
Exercici 1: Crear una Funció Simple
Crea una funció anomenada Multiplica
que accepti dos paràmetres i retorni el producte dels dos números.
Solució
function Multiplica { param ( [int]$Num1, [int]$Num2 ) return $Num1 * $Num2 } # Prova la funció Multiplica -Num1 5 -Num2 3
Exercici 2: Crear un Script
Crea un script anomenat calculadora.ps1
que contingui una funció Suma
que accepti dos paràmetres i retorni la suma dels dos números. Executa el script per provar la funció.
Solució
# Fitxer: calculadora.ps1 function Suma { param ( [int]$Num1, [int]$Num2 ) return $Num1 + $Num2 } # Prova la funció Suma -Num1 10 -Num2 20
Conclusió
En aquest tema, hem après a crear i utilitzar funcions i scripts en PowerShell. Les funcions ens permeten organitzar el nostre codi de manera més eficient, mentre que els scripts ens ajuden a automatitzar tasques repetitives. Amb aquests coneixements, estem preparats per abordar tasques més complexes i avançades en PowerShell.
Curs de PowerShell
Mòdul 1: Introducció a PowerShell
- Què és PowerShell?
- Instal·lació i Configuració de PowerShell
- Consola i ISE de PowerShell
- Comandes i Sintaxi Bàsiques
- Sistema d'Ajuda en PowerShell
Mòdul 2: Scripting Bàsic
- Variables i Tipus de Dades
- Operadors en PowerShell
- Sentències Condicionals
- Bucles en PowerShell
- Funcions i Scripts
Mòdul 3: Treballant amb Objectes
- Comprensió dels Objectes
- Propietats i Mètodes dels Objectes
- Pipelines i Manipulació d'Objectes
- Filtratge i Selecció d'Objectes
- Ordenació i Agrupació d'Objectes
Mòdul 4: Tècniques Avançades de Scripting
- Gestió d'Errors
- Depuració de Scripts
- Expressions Regulars
- Treballant amb Fitxers i Directoris
- Ús de Mòduls i Snap-ins
Mòdul 5: Automatització i Programació de Tasques
- Introducció a l'Automatització
- Creació de Tasques Programades
- Ús de PowerShell per a l'Administració del Sistema
- Automatització de Tasques d'Active Directory
- Automatització de Tasques de Xarxa
Mòdul 6: Remotització amb PowerShell
- Introducció a la Remotització
- Configuració de la Remotització
- Ús d'Invoke-Command
- Gestió de Sessions
- Consideracions de Seguretat
Mòdul 7: Funcions Avançades de PowerShell
- Perfils de PowerShell
- Personalització de l'Entorn de PowerShell
- Creació i Ús de Classes
- Treballant amb XML i JSON
- Ús de PowerShell amb REST APIs
Mòdul 8: PowerShell i DevOps
- Introducció a DevOps
- Ús de PowerShell amb Pipelines CI/CD
- Infraestructura com a Codi (IaC)
- Gestió de Recursos al Núvol amb PowerShell
- PowerShell i Docker