0

我想从makefile中对txt文件中的行进行排序。我发现这个排序函数是一个 make 函数(内置函数)。

$(sort list) 

我的想法:

$(UNSORT) = $(cat input.txt)
$(SORTED) = $(sort $(UNSORT))
@echo $(SORTED) >output.txt

..但这项工作不是:S

任何人都可以帮忙吗?

4

2 回答 2

1

以这种方式调用排序命令

sort text.txt > output.txt
于 2013-02-26T18:47:30.587 回答
0

$()在赋值过程中,您不应将变量名括起来。所以前两个赋值语句的形式应该是VARIABLE = some_value

第二个问题是调用cat. 要运行任何 shell 命令,我们必须使用 make 的内置函数$(shell ...)。简单的$(cat ...)不行。

进行这些更正后,脚本运行良好:

UNSORT = $(shell cat input.txt)
SORTED = $(sort $(UNSORT))

all:
    @echo $(SORTED) > output.txt
于 2013-02-27T10:07:12.813 回答