WindowsへPythonをインストールしたら、真っ先に実行すべきバッチファイル
ウノウラボ Unoh Labs: 2009年版Python開発環境を整えよう
↓
Ehrenの日記: Windowsでもvirtualenvwrapperっぽい環境をつくる
記事を読んでて「virtualenv」「pip」「env.py」の組み合わせは便利だなぁということで、一連の設定を自動でやってくれるバッチファイルを作成しました。前提条件はPythonのインストールが完了していることだけです。当方はPython2.7(Windows XP SP3 x86)で動作を確認しました。
まず、後述のバッチファイルを適当な名前(setup_envpy.bat)で保存します。その時、最初のほうにある「PYDIR」を自分の環境に合わせて書き換えます。必要があれば「VIRTUALENV_PATH」と「HTTP_PROXY」も書き換えてください。
あとは実行。完了すればデスクトップに「sample_env」へのショートカットが出来ます。要らなければ消してください。「env.py」は「%PYDIR%\Scripts」に保存されています。
以上。
2010.9.3追記
Python2.6でも動作を確認しました。あと、pipを使おうと思ったらよくコンパイラが見つからないと怒られます。なので「VC++2008 Express」を入れて「C:\Program Files\Microsoft Visual Studio 9.0\VC」にパスを当してあげることもお忘れなく。
@if(0)==(0) echo off set PYDIR=C:\Python27 set VIRTUALENV_PATH=%PYDIR%\virtualenv rem HTTP_PROXY is "example.com:8080" set HTTP_PROXY= echo. echo ############################################################ echo Python install path is [%PYDIR%]. echo Default virtualenv path is [%VIRTUALENV_PATH%]. echo HTTP proxy setting is [%HTTP_PROXY%] echo ############################################################ echo. echo Installing [easy_install], [virtualenv] and [env.py]. echo. echo continue?[Y] echo Y -^> [Enter] echo n -^> [Ctrl-C] pause set PYSCRIPTS=%PYDIR%\Scripts if not exist %PYSCRIPTS% mkdir %PYSCRIPTS% echo. echo ############################################################ echo Download and install [ez_setup.py] echo ############################################################ echo. set OLD_CD=%CD% cd %PYSCRIPTS% set URL=http://peak.telecommunity.com/dist/ez_setup.py call :WGET %URL% %PYDIR%\python -c "%SCRIPT%">ez_setup.py %PYDIR%\python ez_setup.py cd %OLD_CD% echo. echo ############################################################ echo Install [virtualenv] echo ############################################################ echo. %PYSCRIPTS%\easy_install virtualenv echo. echo ############################################################ echo Download and usage of[env.py] echo ############################################################ echo. set OLD_CD=%CD% cd %PYSCRIPTS% set URL=http://bitbucket.org/jdriscoll/envdotpy/raw/f3dd370337e9/env.py call :WGET %URL% %PYDIR%\python -c "%SCRIPT%">env.py.tmp1 set BEFORE=C:\\\\virtualenvs\\\\ set AFTER=%VIRTUALENV_PATH:\=\\\\% call :REPLACE %BEFORE% %AFTER% more env.py.tmp1 | %PYDIR%\python -c "%SCRIPT%">env.py.tmp2 set BEFORE=virtualenv.exe set AFTER=%PYSCRIPTS:\=\\\\%\\\\virtualenv.exe call :REPLACE %BEFORE% %AFTER% more env.py.tmp2 | %PYDIR%\python -c "%SCRIPT%">env.py del env.py.tmp1 del env.py.tmp2 cd %OLD_CD% echo ^>set PATH=%%PATH%%;%PYSCRIPTS% set PATH=%PATH%;%PYSCRIPTS% echo ^>env.py -h env.py -h echo. echo ############################################################ echo Create sample shortcut into Desktop echo ############################################################ echo. cscript //nologo //E:JScript "%~f0" "%~dp1" "%PYSCRIPTS%\env.py" echo. echo ############################################################ echo. pause exit /b :WGET set SCRIPT=import urllib2;u=urllib2.urlopen('%1');print u.read();u.close(); exit /b :REPLACE set SCRIPT=import sys;print sys.stdin.read().replace('%1','%2'); exit /b @end wsh=new ActiveXObject('WScript.Shell'); shortcut=wsh.CreateShortcut(wsh.SpecialFolders("Desktop")+"\\sample_env.lnk"); shortcut.TargetPath=WScript.Arguments.Item(1); shortcut.Arguments=" -c sample_env" shortcut.WorkingDirectory="%HOMEDRIVE%%HOMEPATH%"; shortcut.Save() WScript.Echo("Created sample_env.lnk")