Makefile 我能获得GNU make中的第二个先决条件吗?

Makefile 我能获得GNU make中的第二个先决条件吗?,makefile,gnu-make,Makefile,Gnu Make,可能重复: 我使用的是GNU make,我使用的是自动变量,比如at$,假设您的先决条件是常规令牌 echo $(word 2,$^) 我经常发现自己给了第一个论点一个特殊的位置,并使用 echo $(filter-out $<,$^) echo$(filter out$我能想到的最好办法,我觉得有点不对劲,就是使用echo$^ | cut-f2-d',a la: output.txt: a.txt b.txt cat $< | ./something `echo $^

可能重复:


我使用的是GNU make,我使用的是自动变量,比如at
$,假设您的先决条件是常规令牌

echo $(word 2,$^)
我经常发现自己给了第一个论点一个特殊的位置,并使用

echo $(filter-out $<,$^)

echo$(filter out$我能想到的最好办法,我觉得有点不对劲,就是使用
echo$^ | cut-f2-d'
,a la:

output.txt: a.txt b.txt
    cat $< | ./something `echo $^ | cut -f2 -d' '` > $@
output.txt:a.txt b.txt
猫$<|/某物'echo$^ | cut-f2-d'`>$@

我很想听到一个比这个更好的答案。:

你能多说一点你为什么需要这个,或者你想完成什么吗?您可能可以一个元素一个元素地分离
$^
元素(即将其视为一个数组),然后通过这种方式获取第二个元素。@Beta,是的-这是重复的。我将投票关闭它。给你:
$(word 2,$^)
过滤技巧正是我想要的:)