python的任务自动化工具,类似于make、rake、ant或cook

Kook的Python项目详细描述


pykook是一个非常有用的工具,可以用来控制编译、安装或清理等任务。 pykook类似于make、rake、ant或cook。 py是pykook的任务定义文件,它是用python编写的。

kookbook.py的简单示例:

@recipe
def hello(c):
    print("Hello")

输出结果:

bash> kk hello     # or pykook hello
### * hello (recipe=hello)
Hello

kookbook.py的其他示例:

CC = prop('CC', 'gcc -Wall')
kookbook.default = 'all'

@recipe
@ingreds('hello')                      # ingredients
def all(c):                            # or task_all(c)
    pass

@recipe('*.o', ['$(1).c', '$(1).h'])   # @recipe(product, [ingredients])
def file_o(c):
    """compile *.c and *.h into *.o"""
    system(c%'$(CC) -c $(ingred)')

@recipe('hello', ['hello.o'])          # @recipe(product, [ingredients])
def file_hello(c):
    """create 'hello' command"""
    system(c%'$(CC) -o $(product) $(ingred)')

@recipe
def clean(c):
    rm_rf("**/*.o", "**/*~")

## or
kookbook.load('@kook/books/clean.py')   # load 'clean' and 'sweep' recipes
CLEAN.append("**/*.o")

有关详细信息,请参见User’s Guide

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何创建Restful服务并将其部署到OSGi容器?   java如何获取用户在EditText中输入的时间并从中扣除5小时30分钟?   java用户无法注销firebase 安卓   java Undertow始终将字符集添加到ContentType头,即使它不是文本MIME类型   java LocalBroadcastManager未正确接收消息   foreach在Java中有没有比For循环更好的方法可以灵活地遍历集合?   java如何在安卓上移动球   在OSGi下的Log4j中使所有记录器异步时,java ClassNotFoundException   java未知输入字节长度转换为int   java测试工厂在使用前缀命名时抛出NPE   对象的副本(JAVA)   java SP20310:无法打开文件。sql   java Spring安全性仅为一条路径添加安全性   java在idea中获取菱形运算符的编译错误