- 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."
 |