内部Makefile:
generate:
touch file{1..10}
使用make
,我得到一个文件名文件{1..10},而不是10个不同的文件。
touch
命令在外壳上可以正常工作。
为什么?
答案 0 :(得分:1)
Make调用名为SHELL
的变量中指定的shell。 * nix系统的默认值为SHELL=/bin/sh
。
设置SHELL=/bin/bash
(或其他任何功能)以使其正常工作。
注意:与其他make变量不同,SHELL
的值永远不会从环境中导入(如果在POSIX OS下运行;对于本机Windows构建而言则不是这样)。