Rem/*Change ooRexx version @echo off rexx %~dpnx0 %* call fromrexx del fromrexx.bat if defined rexx_ver ( echo Proceeding with switch from %rexx_ver% to %1 sc stop rxapi > nul: ren "%rexx_home%" "%rexx_dir%%rexx_ver%" ren "%rexx_home%%1" "%rexx_dir%" set rexx_ver= set rexx_dir= echo Restarting RXAPI; press Ctrl-C to quit pause sc start rxapi > nul: ) goto quit */ -- Determine the current version of ooRexx parse version pre 13 which '(' if (pre = "REXX-ooRexx_") & (which~length = 5) then do -- get the requested version req = arg(1) if which = req then batcmd = "echo Already running ooRexx version" which else do -- get a list of other versions available rexxhome = value("REXX_HOME", , environment) call SysFileTree rexxhome"*", "vers.", "DO" versions = .set~new do i = 1 to vers.0 parse value vers.i with (rexxhome) aVer if aVer <> '' then versions~put(aVer) -- add to the collection end -- check that the requested version is installed if versions~hasIndex(req) then do batcmd = "set rexx_ver="which rexxdir = filespec("N", rexxhome) batcmd = batcmd "& set rexx_dir="rexxdir end else do -- bad version requested; tell user what's available batcmd = "echo Currently available versions:" which do v over versions batcmd = batcmd v end end end end else batcmd = "echo The current ooRexx version info. is not available!" batStream = .stream~new("fromrexx.bat")~~open("write replace") batStream~~lineout(batcmd)~close /* :quit */