Aller au contenu principal

R15 - Examen de mi-session (formatif)

Vendredi 24 octobre 2025

Cet examen est une pratique pour l'examen de mi-session, qui compte pour 15% de la note finale du cours (soit 30% du seuil des examens).

Contexte de réalisation

Vous avez 2 heures pour le terminer. (Si vous avez droit à des accomodements du CSA, veuillez en parler au prof avant l'examen).

Ce qui est permis pendant l'examen:

  • Une feuille de notes personnelles 8½x11 manuscrite recto-verso
  • L'accès au site du cours
  • Les fichiers PowerPoint fournis par le professeur
  • Les terminaux PowerShell et Windows PowerShell
  • Visual Studio Code ainsi que le débogueur

Toute autre documentation est interdite (OneNote, GitHub, le code du TP, etc.).

Puisqu'il s'agit d'un examen de pratique, il sera possible de poser des questions au professeur. N'utilisez ce privilège que lorsque vous êtes vraiment bloqué sur une question.

Conseils pour la révision

Pour vous permettre de réussir l'examen, vous devez être à l'aise avec les concepts suivants:

  • Le format de fichier d'un script PowerShell (.PS1)
  • Les conditions d'exécution d'un script:
  • L'exécution de scripts
    • Par l'explorateur de fichiers ou le bureau
    • Par la console PowerShell
    • Par l'invite de commande classique avec l'interpréteur powershell.exe
  • Les structures de contrôle et l'algorithmie
    • Les structures de sélection (if..elseif..else, switch)
    • Les structures de répétition (while, do, for, foreach, ForEach-Object)
  • Les fonctions
    • La différence entre la déclaration d'une fonction et l'appel d'une fonction
    • Sortie dans le pipeline
    • L'instruction Return
  • Les paramètres
    • Paramètres d'un script et paramètres d'une fonction
    • Déclaration de paramètres avec le bloc Param()
    • Validation des paramètres (ValidateSet, ValidateLength, ValidateScript, etc.)
    • Paramètres obligatoires
    • Paramètres booléens de type [Switch]
    • Passage d'un tableau en paramètre
    • Passage d'un paramètre à l'entrée du pipeline
  • Les fichiers
    • Lecture et écriture de fichiers texte
    • Lecture et écriture de fichiers CSV
    • Journalisation (logging)
  • La gestion des erreurs
    • Actions en cas d'erreur (Stop, Continue, SilentlyContinue...)
    • Paramètre ErrorAction
    • Variable $ErrorActionPreference
    • Structures Try/Catch
    • Code de retour des commandes classiques
  • Comptes et groupes locaux (commandes LocalUser, LocalGroup, LocalGroupMember)
  • Domaine Active Directory
  • Splatting
  • Bonnes pratiques de scripting
    • Éviter les alias et les noms de paramètres
    • Commenter son code
    • Indenter son code