このブログは、旧・はてなダイアリー「檜山正幸のキマイラ飼育記 メモ編」(http://d.hatena.ne.jp/m-hiyama-memo/)のデータを移行・保存したものであり、今後(2019年1月以降)更新の予定はありません。

今後の更新は、新しいブログ http://m-hiyama-memo.hatenablog.com/ で行います。

DoIt

インストール記録。

$ pip install doit でよかったみたいだが、doit-0.15.0.tar.gz をダウンロードしてしまったから、これを展開して、setup.pyを実行した。


$ python setup.py install
c:\Installed\Python26\lib\distutils\dist.py:266: UserWarning: Unknown distribution option: 'install_requires'
warnings.warn(msg)
running install
running build
running build_py
creating build
creating build\lib
creating build\lib\doit
copying doit\action.py -> build\lib\doit
copying doit\cmdparse.py -> build\lib\doit
copying doit\cmds.py -> build\lib\doit
copying doit\control.py -> build\lib\doit
copying doit\dependency.py -> build\lib\doit
copying doit\doit_cmd.py -> build\lib\doit
copying doit\exceptions.py -> build\lib\doit
copying doit\filewatch.py -> build\lib\doit
copying doit\loader.py -> build\lib\doit
copying doit\reporter.py -> build\lib\doit
copying doit\runner.py -> build\lib\doit
copying doit\task.py -> build\lib\doit
copying doit\tools.py -> build\lib\doit
copying doit\__init__.py -> build\lib\doit
running build_scripts
creating build\scripts-2.6
copying and adjusting bin\doit -> build\scripts-2.6
copying bin\doit.bat -> build\scripts-2.6
running install_lib
creating c:\Installed\Python26\Lib\site-packages\doit
copying build\lib\doit\action.py -> c:\Installed\Python26\Lib\site-packages\doit

copying build\lib\doit\cmdparse.py -> c:\Installed\Python26\Lib\site-packages\do
it
copying build\lib\doit\cmds.py -> c:\Installed\Python26\Lib\site-packages\doit
copying build\lib\doit\control.py -> c:\Installed\Python26\Lib\site-packages\doi
t
copying build\lib\doit\dependency.py -> c:\Installed\Python26\Lib\site-packages\
doit
copying build\lib\doit\doit_cmd.py -> c:\Installed\Python26\Lib\site-packages\do
it
copying build\lib\doit\exceptions.py -> c:\Installed\Python26\Lib\site-packages\
doit
copying build\lib\doit\filewatch.py -> c:\Installed\Python26\Lib\site-packages\d
oit
copying build\lib\doit\loader.py -> c:\Installed\Python26\Lib\site-packages\doit

copying build\lib\doit\reporter.py -> c:\Installed\Python26\Lib\site-packages\do
it
copying build\lib\doit\runner.py -> c:\Installed\Python26\Lib\site-packages\doit

copying build\lib\doit\task.py -> c:\Installed\Python26\Lib\site-packages\doit
copying build\lib\doit\tools.py -> c:\Installed\Python26\Lib\site-packages\doit
copying build\lib\doit\__init__.py -> c:\Installed\Python26\Lib\site-packages\do
it
byte-compiling c:\Installed\Python26\Lib\site-packages\doit\action.py to action.
pyc
byte-compiling c:\Installed\Python26\Lib\site-packages\doit\cmdparse.py to cmdpa
rse.pyc
byte-compiling c:\Installed\Python26\Lib\site-packages\doit\cmds.py to cmds.pyc
byte-compiling c:\Installed\Python26\Lib\site-packages\doit\control.py to contro
l.pyc
byte-compiling c:\Installed\Python26\Lib\site-packages\doit\dependency.py to dep
endency.pyc
byte-compiling c:\Installed\Python26\Lib\site-packages\doit\doit_cmd.py to doit_
cmd.pyc
byte-compiling c:\Installed\Python26\Lib\site-packages\doit\exceptions.py to exc
eptions.pyc
byte-compiling c:\Installed\Python26\Lib\site-packages\doit\filewatch.py to file
watch.pyc
byte-compiling c:\Installed\Python26\Lib\site-packages\doit\loader.py to loader.
pyc
byte-compiling c:\Installed\Python26\Lib\site-packages\doit\reporter.py to repor
ter.pyc
byte-compiling c:\Installed\Python26\Lib\site-packages\doit\runner.py to runner.
pyc
byte-compiling c:\Installed\Python26\Lib\site-packages\doit\task.py to task.pyc
byte-compiling c:\Installed\Python26\Lib\site-packages\doit\tools.py to tools.py
c
byte-compiling c:\Installed\Python26\Lib\site-packages\doit\__init__.py to __ini
t__.pyc
running install_scripts
copying build\scripts-2.6\doit -> c:\Installed\Python26\Scripts
copying build\scripts-2.6\doit.bat -> c:\Installed\Python26\Scripts
running install_egg_info
Writing c:\Installed\Python26\Lib\site-packages\doit-0.15.0-py2.6.egg-info

$

試す。


$ which doit
/c/Installed/Python26/Scripts/doit

$ cat dodo.py
def task_hello():
"""hello from shell & python! """

def python_hello(targets):
with open(targets[0], "a") as output:
output.write("Python says Hello World!!!\n")

return {'actions': ['echo Hello World!!! > %(targets)s',
python_hello],
'targets': ["hello.txt"]
}

$ doit
. hello

$