我有一长串要处理的文件,在python编程的10个步骤中,我试图创建一个makefile
来运行所有这些文件。出于某种原因,我不知道为什么当我按照下面的代码运行它们时,第二步之后输出是空的。当我一个接一个地调用它们时,代码可以工作,但是我在每个步骤中更改输出的名称,或者更改文件夹中的输出,我不知道如何在makefiles
中创建它。除了makefiles
之外,我也接受其他建议(比如pypelines
。。。我对shell命令有点不知所措)
我的makefile
看起来像这样
zero::
for f in `ls data/wikiMaths/*.html`; do \
python src/maths/stripHtmlMaths.py $$f > $$f; \
done
one::
for f in `ls data/wikiMaths/*.html`; do \
python src/maths/Wiki2Text.py $$f > $$f; \
done
three::
for f in `ls data/wikiMaths/*.txt`; do \
python src/maths/striphtml.py $$f > $$f; \
done
four::
for f in `ls data/wikiMaths/*.txt`; do \
python src/maths/sipTrash.py $$f > $$f; \
done
five::
for f in `ls data/wikiMaths/*.txt`; do \
python src/maths/tagFormula.py $$f > $$f; \
done
six::
for f in `ls data/wikiMaths/*.txt`; do \
python src/maths/CountForm.py $$f > $$f; \
done
seven::
for f in `ls data/wikiMaths/*.txt`; do \
python src/maths/stripWhiteSpace.py $$f > $$f; \
done
eight::
for f in `ls data/wikiMaths/*.txt`; do \
python src/maths/Text2Xml.py $$f > $$f.xml; \
done
nine::
for f in `ls data/wikiMaths/*.xml`; do \
python src/maths/Separate.py $$f > $$f; \
done
我想做的是:
^{pr2}$要替换它:
python src/maths/stripHtmlMaths.py data/wikiMaths/file1.html > data/newFolder/file1.html
python src/maths/Wiki2Text.py data/newFolder/file1.html > data/newFolderTwo/file1.txt
我不明白为什么不使用Makefile的强大功能;为什么不将每个文件的所有9个操作串联成一个配方呢?或者为什么不用一个简单的python脚本来代替这些呢。此外,您的管道必须一直截断源文件。在
有点像
Python脚本比makefile更灵活 你可以像
你需要更改文件名,但我希望这个想法是清楚的
相关问题 更多 >
编程相关推荐