我有一个变量中的文件路径列表。我想将此列表中的每个文件复制到新位置。问题是,我是一个非常新的makefiles,我正在努力让任何工作。我的尝试最终达到了以下目的,虽然不起作用(可能完全错误)但我希望它能说明我正在尝试做什么。
FILES = a/b/file c/d/file e/.../file etc...
copyfiles:
for file in $(FILES); do \
cp $$file newDir/$(notdir $$file); \
done
答案 0 :(得分:4)
你可以做到
FILES = a/b/file c/d/file e/.../file etc...
copyfiles:
cp $(FILES) newDir
我试了一下,然后就可以了。
请记住,globbing由shell完成,而不是由命令完成。 cp
将文件列表作为参数,并将所有文件复制到最后一个参数指定的位置。当您键入cp *.cpp
时,所有cp
程序都认为其参数是当前目录中以.cpp
结尾的文件。