Script bat ou cmd - Utiliser temporairement une lettre réseau sur un répertoire partagé
- Détails
- Catégorie : Trucs et astuces du développeur
- Créé le lundi 3 janvier 2011 16:25
- Mis à jour le mercredi 22 juin 2011 20:06
- Publié le lundi 3 janvier 2011 16:25
- Écrit par Jérôme Baudin
- Affichages : 1482
Cas concret : je veux automatiser la compression d'un répertoire avec 7Zip avec les contrainte suivantes :
- 7z.exe est sur un serveur distant
- Le répertoire à compresser est sur un serveur distant
- Le programme devra être exécuté automatiquement via une tâche planifiée ou exécutée depuis un script VBA sur une tierce machine.
- Je ne veux pas copier en local les fichiers à compresser.
Impossible ? Ben si.....
Pour mieux comprendre, voici un exemple de script :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
rem exemple.bat %1 %2 %3 rem %1 : répertoire contenant 7z.exe rem %2 : répertoire contenant les fichiers à compresser rem %3 : nom du fichier de destination exemple.zip rem --------------------------------------- rem Répertoire d'exécution de 7Zip rem Création d'une lettre réseau temporaire pushd %1 rem Récupération de la lettre créée SET repzip=%cd% rem --------------------------------------- rem Répertoire à compresser rem Création d'une lettre réseau temporaire pushd %2 rem Récupération de la lettre créée SET repacompresser=%cd% rem --------------------------------------- cd %repzip% %repzip%\7z.exe a %repzip%\temp\%3 %repacompresser%\*.* SET errorzip=%ErrorLevel% rem --------------------------------------- rem Libération des lettres réseaux popd popd rem --------------------------------------- rem retour du code erreur de 7Zip exit %errorzip% |
{jcomments on}

