Tempo entre 2 instructions

Résolu
inoxj1 Messages postés 13 Date d'inscription   Statut Membre Dernière intervention   -  
 LUDO -
Bonjour,

Je suis sur WIN7 64bit et je veux faire un script d'installation silencieuse d'oracle, le script d'installet deja fait :

echo off

echo *********************************************************************
echo * *
echo * INSTALLATION DU CLIENT ORACLE 10g *
echo * *
echo * Veuillez patienter... *
echo * *
echo *********************************************************************
echo.
\\srv-parc\Public\Applications\Oracle_Client_10g\Sources\setup.exe -silent -responseFile \\srv-parc\Public\Applications\Oracle_Client_10g\Automatisation\clientcustom.rsp
cls


mkdir C:\oracle\product\10.2.0\client_4\network\ADMIN
COPY /Y \\srv-parc\Public\Applications\Oracle\Oracle_Client_10g\Sources\tnsnames.ora C:\oracle\product\10.2.0\client_4\NETWORK\ADMIN

exit


Cependant durant l'instalation on m'affiche une erreur du au fait que pour s'installer, le dossier d'instalation doit etre vide or le mkdir creer un dossier.

Ce que je voudrais c'est faire en sorte que mkdir ne creer un dossier qu'apres que l'installation d'oracle soit fini.

Je pourrais faire une tempo mais suivant le pc et suivant le temp d'installation, cette methode reste trop approximative.

Je voudrais savoir s'il est possible de poser des condition de lancement d'une instruction Par exemple avec des if else ou des boucles


A voir également:

3 réponses

Pierrot6150 Messages postés 1619 Date d'inscription   Statut Membre Dernière intervention   560
 
Pour moi, le problème ce situe au niveau setup.exe

Le batch n'attend pas.
Le setup s'exécute... et pendant ce temps le batch continue le reste des commandes

* Jamais fait avec un serveur, voir si cela est OK (accepter)
Dans ton batch...
\\srv-parc\Public\Applications\Oracle_Client_10g\Sources\start "" /WAIT setup.exe -silent -responseFile \\srv-parc\Public\Applications\Oracle_Client_10g\Automatisation\clientcustom.rsp

Tant que cette application n'est pas terminer, le batch est suspendu.
0
inoxj1 Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
 
J'ai essayer start /wait mais cela ne marche toujours j'ai donc decider de faire 2 fichier bat pour l'installation. En faisant un choix demandant a l'utilisateur de lancer le 2e bat lorsque l'installe est fini. Mais j'ai un probleme quand je lance le premiere .bat celui poster plus haut , sur mon ecran il y a 2 fenetre de msdos. La premiere affichant :


echo off

echo *********************************************************************
echo * *
echo * INSTALLATION DU CLIENT ORACLE 10g *
echo * *
echo * Veuillez patienter... *
echo * *
echo *********************************************************************
echo.

et la deuxieme affichant l'installation.

Cependant la premiere fenetre ce ferme pendant l'instalation. Ce qui m'empeche de pouvoir faire le choix pour valider le lancement du 2e bat.
0
Pierrot6150 Messages postés 1619 Date d'inscription   Statut Membre Dernière intervention   560
 
@echo off
...
...
..
rem Appeler le batch n°2
..
..
rem fin de ton batch
pause
0
LUDO
 
salut,

moi je ferai une vérification au niveau du processus. Lorque l'install d'oracle se fait, un processus (peut etre il s'appelle "oracle.exe") se créé. Il doit disparaitre apres l'installation. Il te suffit de vérifier ça et de mettre une condition:

echo off
echo *********************************************************************
echo * *
echo * INSTALLATION DU CLIENT ORACLE 10g *
echo * *
echo * Veuillez patienter... *
echo * *
echo *********************************************************************
echo.
\\srv-parc\Public\Applications\Oracle_Client_10g\Sources\setup.exe -silent -responseFile \\srv-parc\Public\Applications\Oracle_Client_10g\Automatisation\clientcustom.rsp
cls
:test
tasklist | find "oracle.exe"
if %errorlevel% GTR 0 (
mkdir C:\oracle\product\10.2.0\client_4\network\ADMIN
COPY /Y \\srv-parc\Public\Applications\Oracle\Oracle_Client_10g\Sources\tnsnames.ora C:\oracle\product\10.2.0\client_4\NETWORK\ADMIN
) else (
goto test
)
exit
0