Makefile-for循环的语法错误
在Makefile中,我需要循环遍历一个列表,并将列表的当前元素写入一个文件中。 代码如下:Makefile-for循环的语法错误,makefile,io-redirection,Makefile,Io Redirection,在Makefile中,我需要循环遍历一个列表,并将列表的当前元素写入一个文件中。 代码如下: SHELL := /bin/bash LIST = A B C test: for i in $(LIST) do \ echo $ii > file.txt \ done 我得到以下错误: /bin/bash: -c: line 1: syntax error near unexpected token `>' 你知道如何修复它吗?你缺少一个;在$(列表)之后。在启
SHELL := /bin/bash
LIST = A B C
test:
for i in $(LIST) do \
echo $ii > file.txt \
done
我得到以下错误:
/bin/bash: -c: line 1: syntax error near unexpected token `>'
你知道如何修复它吗?你缺少一个;在$(列表)
之后。在启动do
块之前,您需要终止为提供的单词列表
如注释中所示,您还需要在echo
行的末尾加一个:(运行的命令没有换行符,这与正常命令行的工作方式相同,因此您需要显式地将命令彼此分离)
此外,为了获得预期的结果,您需要使用$$i
在shell命令中转义$i(也可以选择$i
或$ii
中的一个作为变量名)。@Giove在完成之前也需要一个变量名<代码>用于。。。;做完成
您还需要使用双美元符号转义shell变量引用:$$ii
而不是$ii
。