Automatiser le lancement répétitif d'une application
aflafla
-
barnabe0057 Messages postés 14455 Date d'inscription Statut Contributeur Dernière intervention -
barnabe0057 Messages postés 14455 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
Dans le cadre de mon travail nous devons régulièrement convertir un nombre de fichiers vidéo.
Actuellement, la commande basique dans un batch est
cd répertoire_de_conversion
appli.exe vid.asf
Simple lorsqu'il n'y a qu'un fichier. Fastidieux lorsqu'il y en a 30.
En effet, on doit :
- renommer le fichier d'origine "video1.asf" en "vid.asf"
- lancer le batch
- attendre un temps indéterminé selon la taille de la vidéo (typiquement 2 à 60 secondes)
- renommer le nouveau fichier créé "blablabla.avi" en "video1.avi" pour qu'on retrouve le nom d'origine.
- supprimer le fichier "vid.asf"
- recommencer avec le fichier "video2.asf"
- etc.
Quelqu'un aurait-il une solution toute prête pour qu'en lançant 1 fois le batch il soit possible d'automatiser toutes les tâches que nous réalisons manuellement ?
Merci d'avance de votre aide :)
Dans le cadre de mon travail nous devons régulièrement convertir un nombre de fichiers vidéo.
Actuellement, la commande basique dans un batch est
cd répertoire_de_conversion
appli.exe vid.asf
Simple lorsqu'il n'y a qu'un fichier. Fastidieux lorsqu'il y en a 30.
En effet, on doit :
- renommer le fichier d'origine "video1.asf" en "vid.asf"
- lancer le batch
- attendre un temps indéterminé selon la taille de la vidéo (typiquement 2 à 60 secondes)
- renommer le nouveau fichier créé "blablabla.avi" en "video1.avi" pour qu'on retrouve le nom d'origine.
- supprimer le fichier "vid.asf"
- recommencer avec le fichier "video2.asf"
- etc.
Quelqu'un aurait-il une solution toute prête pour qu'en lançant 1 fois le batch il soit possible d'automatiser toutes les tâches que nous réalisons manuellement ?
Merci d'avance de votre aide :)
A voir également:
- Automatiser le lancement répétitif d'une application
- Nommez une application d'appel vidéo ou de visioconférence - Guide
- Comment supprimer une application préinstallée sur android - Guide
- Desinstaller une application sur windows - Guide
- Lancer une application au démarrage windows 10 - Guide
- C'est quoi le cache d'une application - Guide
1 réponse
Bonjour,
Ce script devrait répondre à tes attentes :
J'ai conçu le script de manière à ce que tu puisses rajouter des fichiers .asf pendant son exécution, comme cela tu n'as pas besoin de relancer le script plusieurs fois si tu dois ajouter de nouvelles vidéos entretemps.
Concernant le fait de renommer "video1.asf" en "vid.asf", je trouve cette opération inutile, j'ai donc fait en sorte de trouver directement le fichier de sortie et de le renommer comme l'original.
J'ai mis pas mal de commentaires pour que tu puisses comprendre le déroulement.
Si tu as des questions n'hésite pas.
Ce script devrait répondre à tes attentes :
@echo off
setlocal enabledelayedexpansion
set ext1=asf
set ext2=avi
:debut
set "titre="
:: ---------------------------------------------------
:: on choisit un fichier à traiter
:: ---------------------------------------------------
for /f "delims=" %%A in ('2^>nul dir /b *.%ext1% ^| sort /r') do (
if /i "%%~xA"==".%ext1%" (set "titre=%%~nA" & title %%~A)
)
:: --------------------------------------------------------------
:: on quitte le script s'il n'y a plus de fichiers à traiter
:: --------------------------------------------------------------
if not defined titre (exit /b 0)
:: ---------------------------------------------------
:: on liste les fichiers .avi avant traitement
:: ---------------------------------------------------
dir /b *.%ext2% > liste_pretraitement.txt
:: ---------------------------------------------------
:: on convertit le fichier video
:: ---------------------------------------------------
appli.exe !titre!.%ext1%
:: ---------------------------------------------------------------------
:: on recherche le fichier .avi et on le renomme comme l'original
:: ---------------------------------------------------------------------
for /f "delims=" %%B in ('2^>nul dir /b *.%ext2%') do (
find "%%~B" liste_pretraitement.txt >nul || ren "%%~B" "!titre!.%ext2%"
)
:: ---------------------------------------------------
:: on supprime la video "source"
:: ---------------------------------------------------
if exist "!titre!.%ext2%" (del /f /q "!titre!.%ext1%")
:: ---------------------------------------------------
:: on passe à la video suivante
:: ---------------------------------------------------
goto :debut
J'ai conçu le script de manière à ce que tu puisses rajouter des fichiers .asf pendant son exécution, comme cela tu n'as pas besoin de relancer le script plusieurs fois si tu dois ajouter de nouvelles vidéos entretemps.
Concernant le fait de renommer "video1.asf" en "vid.asf", je trouve cette opération inutile, j'ai donc fait en sorte de trouver directement le fichier de sortie et de le renommer comme l'original.
J'ai mis pas mal de commentaires pour que tu puisses comprendre le déroulement.
Si tu as des questions n'hésite pas.