mardi 12 octobre 2010

windows : script shell

Voici des petits exemples de script sous windows ...


Tout d'abord le set ...

@rem Choose proper WebLogic jni libraries
set WL_USE_X86DLL=true
set WL_USE_IA64DLL=false
@rem Set Ant Home
set ANT_HOME=%MODULES_DIR%\org.apache.ant_1.7.1



Puis, le if, et un jump a "noReset" ...

@rem Reset JAVA_HOME, JAVA_VENDOR and PRODUCTION_MODE unless JAVA_HOME and
@rem JAVA_VENDOR are defined already.
if DEFINED JAVA_HOME if DEFINED JAVA_VENDOR goto noReset

...

:noReset


Un second if avec un test

if "%JAVA_VENDOR%" == "Sun" goto sun


Puis un if qui test si un fihcier exist, et si oui, l'appel :

@rem setup patch related class path, library path, path and extension dirs options
if exist "%WL_HOME%\common\bin\setPatchEnv.cmd" call "%WL_HOME%\common\bin\setPatchEnv.cmd"


Puis, un if not ...


IF NOT "%DERBY_PRE_CLASSPATH%"=="" (
set DERBY_CLASSPATH=%DERBY_PRE_CLASSPATH%;%DERBY_CLASSPATH%
)

...

IF NOT EXIST %WL_HOME%\common\eval\pointbase goto endpointbase


Puis une boucle :

set ANT_HOME=%MODULES_DIR%\org.apache.ant_1.7.1
FOR %%i IN ("%ANT_HOME%") DO SET ANT_HOME=%%~fsi


Une fonction complexe:

:SETARG
SET ARGNAME=%1
SET ARGVALUE=%2
SHIFT
SHIFT
FOR %%I IN (%ARGVALUE%) DO SET ARGVALUE=%%~I
IF /i "%ARGNAME%"=="-log" (
IF "%ARGVALUE:~1,1%"==":" (
SET ARGUMENTS=%ARGUMENTS% %ARGNAME%=%ARGVALUE%
) ELSE (
SET ARGUMENTS=%ARGUMENTS% %ARGNAME%=%MYPWD%\%ARGVALUE%
)
GOTO :PARSEARGS
) ELSE (
IF /i "%ARGNAME%"=="-silent_script" (
IF "%ARGVALUE:~1,1%"==":" (
SET ARGUMENTS=%ARGUMENTS% %ARGNAME%=%ARGVALUE%
) ELSE (
SET ARGUMENTS=%ARGUMENTS% %ARGNAME%=%MYPWD%\%ARGVALUE%
)
GOTO :PARSEARGS
) ELSE (
IF /i "%ARGNAME%"=="-useXACML" (
SET MEM_ARGS=%MEM_ARGS% -DuseXACML=%ARGVALUE%
) ELSE (
SET ARGUMENTS=%ARGUMENTS% %ARGNAME%="%ARGVALUE%"
)
GOTO :PARSEARGS
)
)

Aucun commentaire:

Enregistrer un commentaire