Sunday, May 9, 2010

Update wampserver apache version

Here is a batch that would do the work. It is based on a thread in the forums. Provided as is without any warranty.
  1. @echo off  
  2. set dest_root=E:\usr\wamp\bin\apache  
  3. set source_root=%~dp0  
  4.   
  5. set apache_zip=  
  6. for /f %%f in ('dir /b/ogn %source_root%httpd-*'do set apache_zip=%%f  
  7. if "%apache_zip%"=="" goto :eof  
  8. set unzip_dir=%apache_zip%  
  9. set unzip_dir=%unzip_dir:~0,-4%  
  10. if "%unzip_dir%"=="" goto :eof  
  11. if exist "%unzip_dir%" rd /s/q "%unzip_dir%"  
  12. e:\usr\7-Zip\7z x -o%unzip_dir% %apache_zip%   
  13.   
  14. echo %unzip_dir%  
  15.   
  16. set ver=%unzip_dir:~6,-14%  
  17. set dest_dir=%dest_root%\Apache%ver%  
  18. echo %dest_dir%  
  19.   
  20. if exist "%dest_dir%" rd /s/q "%dest_dir%"  
  21.   
  22. set previous_ver=  
  23. for /f %%f in ('dir /b/ogn/ad %dest_root%\Apache*'do if not "%%f"=="%ver%" set previous_ver=%%f  
  24. set previous_ver=%previous_ver:~6%  
  25. set previous_dir=%dest_root%\Apache%previous_ver%  
  26. echo %previous_dir%  
  27.   
  28. mkdir %dest_dir%  
  29. robocopy /NP /MIR /NFL "%unzip_dir%\Apache2" "%dest_dir%" /XD lib /XD include /XD manual  
  30. copy %previous_dir%\wampserver.conf %dest_dir% >nul  
  31. copy %previous_dir%\conf\httpd.conf %dest_dir%\conf >nul  
  32.   
  33. rd /s/q %unzip_dir%  

No comments: