Script PowerShell de suppression des fichiers firmware DFF via API REST
- Lecture CSV depuis export XpressNetwork Utilities - Detection automatique du delimiteur (virgule ou point-virgule) - Support HTTP et HTTPS avec ports configurables - Authentification Basic Auth - Mode dry-run pour tester sans supprimer - Fichier de log avec succes et erreurs
This commit is contained in:
107
README.md
Normal file
107
README.md
Normal file
@@ -0,0 +1,107 @@
|
||||
# Script de suppression des fichiers firmware DFF
|
||||
|
||||
Ce script permet de supprimer automatiquement les fichiers `.DFF` (firmware) sur plusieurs controleurs Distech Controls.
|
||||
|
||||
## Pre-requis
|
||||
|
||||
- Windows 10 ou Windows 11
|
||||
- Fichier CSV exporte depuis **XpressNetwork Utilities**
|
||||
|
||||
## Etape 1 : Exporter la liste des controleurs
|
||||
|
||||
1. Ouvrir **XpressNetwork Utilities**
|
||||
2. Selectionner les controleurs souhaites
|
||||
3. Exporter la liste en CSV
|
||||
|
||||
## Etape 2 : Ajouter les identifiants au fichier CSV
|
||||
|
||||
Le fichier CSV exporte ne contient pas les identifiants de connexion. Il faut les ajouter manuellement.
|
||||
|
||||
1. Ouvrir le fichier CSV avec **Excel** ou un editeur de texte
|
||||
2. Trouver les colonnes `Username` et `Password` (dernieres colonnes)
|
||||
3. Remplir ces colonnes pour chaque controleur
|
||||
|
||||
Exemple :
|
||||
```
|
||||
"Username";"Password"
|
||||
"admin";"MonMotDePasse"
|
||||
"admin";"MonMotDePasse"
|
||||
```
|
||||
|
||||
4. Enregistrer le fichier
|
||||
|
||||
## Etape 3 : Executer le script
|
||||
|
||||
### Ouvrir PowerShell dans le bon dossier
|
||||
|
||||
1. Ouvrir l'**Explorateur de fichiers**
|
||||
2. Naviguer vers le dossier contenant le script et le fichier CSV
|
||||
3. **Maintenir la touche Shift** et faire un **clic droit** dans le dossier (pas sur un fichier)
|
||||
4. Cliquer sur **"Ouvrir la fenetre PowerShell ici"** ou **"Ouvrir dans le terminal"**
|
||||
|
||||
### Option A : Mode test (recommande en premier)
|
||||
|
||||
Ce mode affiche les fichiers qui seraient supprimes **sans les supprimer**.
|
||||
|
||||
Copier-coller la commande suivante :
|
||||
|
||||
```powershell
|
||||
powershell -ExecutionPolicy Bypass -File delete-firmware.ps1 -CsvPath "exempleExport.csv" -DryRun
|
||||
```
|
||||
|
||||
### Option B : Suppression reelle
|
||||
|
||||
Une fois le mode test valide, executer sans `-DryRun` :
|
||||
|
||||
```powershell
|
||||
powershell -ExecutionPolicy Bypass -File delete-firmware.ps1 -CsvPath "exempleExport.csv"
|
||||
```
|
||||
|
||||
## Exemple complet
|
||||
|
||||
Si le script et le CSV sont dans le meme dossier, ouvrir PowerShell dans ce dossier puis :
|
||||
|
||||
```powershell
|
||||
# Mode test
|
||||
powershell -ExecutionPolicy Bypass -File delete-firmware.ps1 -CsvPath "exempleExport.csv" -DryRun
|
||||
|
||||
# Suppression reelle
|
||||
powershell -ExecutionPolicy Bypass -File delete-firmware.ps1 -CsvPath "exempleExport.csv"
|
||||
```
|
||||
|
||||
## Fichier de log
|
||||
|
||||
Un fichier de log est cree automatiquement dans le meme dossier que le CSV :
|
||||
```
|
||||
delete-firmware_2026-02-05_15-45-16.log
|
||||
```
|
||||
|
||||
Ce fichier contient :
|
||||
- Les controleurs traites
|
||||
- Les fichiers supprimes
|
||||
- Les erreurs rencontrees
|
||||
|
||||
## Comprendre les resultats
|
||||
|
||||
| Message | Signification |
|
||||
|---------|---------------|
|
||||
| `SUPPRIME: xxx.DFF` | Fichier supprime avec succes |
|
||||
| `[DRY-RUN] A supprimer: xxx.DFF` | Fichier qui serait supprime (mode test) |
|
||||
| `Aucun fichier DFF trouve` | Pas de fichier .DFF sur ce controleur |
|
||||
| `ECHEC connexion` | Controleur injoignable (verifier IP/reseau) |
|
||||
|
||||
## Depannage
|
||||
|
||||
### "Impossible de se connecter au serveur distant"
|
||||
- Verifier que le controleur est allume et accessible sur le reseau
|
||||
- Verifier l'adresse IP dans le fichier CSV
|
||||
|
||||
### "Erreur 401" ou "Non autorise"
|
||||
- Verifier le nom d'utilisateur et mot de passe dans le CSV
|
||||
|
||||
### Le script ne se lance pas
|
||||
- Verifier que la commande commence bien par `powershell -ExecutionPolicy Bypass`
|
||||
|
||||
## Support
|
||||
|
||||
Pour toute question, contacter le support technique.
|
||||
Reference in New Issue
Block a user