- Added scanning and metadata tracking for non-markdown files (images, PDFs, videos, code files) - Redesigned drawings editor header with new toolbar layout and dropdown menus - Added file picker dropdown to easily open existing .excalidraw files - Implemented new file creation flow with auto-generated filenames - Added export options menu with PNG/SVG/JSON export variants - Updated proxy config to support vault file access - Adde
73 lines
1.8 KiB
PowerShell
73 lines
1.8 KiB
PowerShell
<#
|
||
.SYNOPSIS
|
||
Exemple de script PowerShell de démonstration.
|
||
|
||
.DESCRIPTION
|
||
Ce script montre comment :
|
||
- Définir des variables
|
||
- Lire des entrées utilisateur
|
||
- Utiliser des conditions et des boucles
|
||
- Écrire dans un fichier de log
|
||
- Gérer des erreurs
|
||
|
||
.AUTHOR
|
||
Bruno Charest
|
||
#>
|
||
|
||
# =======================
|
||
# ⚙️ Variables de base
|
||
# =======================
|
||
$UserName = $env:USERNAME
|
||
$DateNow = Get-Date -Format "yyyy-MM-dd HH:mm:ss"
|
||
$LogFile = "C:\Logs\ExampleScript.log"
|
||
|
||
# Crée le répertoire de logs si nécessaire
|
||
if (!(Test-Path (Split-Path $LogFile))) {
|
||
New-Item -Path (Split-Path $LogFile) -ItemType Directory -Force | Out-Null
|
||
}
|
||
|
||
# =======================
|
||
# 📝 Fonction pour journaliser les événements
|
||
# =======================
|
||
function Write-Log {
|
||
param (
|
||
[string]$Message,
|
||
[string]$Level = "INFO"
|
||
)
|
||
$LogEntry = "$((Get-Date).ToString('yyyy-MM-dd HH:mm:ss')) [$Level] $Message"
|
||
Add-Content -Path $LogFile -Value $LogEntry
|
||
Write-Host $LogEntry
|
||
}
|
||
|
||
Write-Log "Script démarré par $UserName"
|
||
|
||
# =======================
|
||
# 👋 Interaction utilisateur
|
||
# =======================
|
||
$name = Read-Host "Quel est ton prénom"
|
||
Write-Log "Nom entré : $name"
|
||
|
||
# =======================
|
||
# 🔁 Exemple de boucle
|
||
# =======================
|
||
for ($i = 1; $i -le 5; $i++) {
|
||
Write-Host "Itération $i"
|
||
Start-Sleep -Milliseconds 500
|
||
}
|
||
|
||
# =======================
|
||
# ⚠️ Exemple de gestion d'erreur
|
||
# =======================
|
||
try {
|
||
# Exemple : tentative de suppression d’un fichier inexistant
|
||
Remove-Item "C:\FichierInexistant.txt" -ErrorAction Stop
|
||
} catch {
|
||
Write-Log "Erreur détectée : $($_.Exception.Message)" "ERROR"
|
||
}
|
||
|
||
# =======================
|
||
# ✅ Fin du script
|
||
# =======================
|
||
Write-Log "Script terminé avec succès."
|
||
Write-Host "`n✅ Exécution terminée avec succès."
|