代码之家  ›  专栏  ›  技术社区  ›  miroli

生成压缩存档的内容生成目标

  •  1
  • miroli  · 技术社区  · 7 年前

    假设我需要下载一个包含数千个压缩CSV文件的压缩归档文件,并将其解压缩,我想使用 make 对于该过程。第一步很简单:

    myarchive.zip:
        curl -o myarchive.zip 'http://path/to/archive.zip'
    

    但在下载档案之前,我不知道其中每个文件的名称。这行不通。

    extracted/*.csv: myarchive.zip
        unzip myarchive.zip -d extracted
    

    我如何让 制作 知道所有这些CSV文件都是目标吗?

    1 回复  |  直到 7 年前
        1
  •  1
  •   Beta    7 年前

    目前还不清楚您到底想要什么,但这可能很接近:

    ARCHIVE_DIR := extracted
    
    .PHONY: archive
    archive: myarchive.zip
        unzip $< -d $(ARCHIVE_DIR)
    
    myarchive.zip:
        curl -o $@ 'http://path/to/archive.zip'