我想从makefile中对txt文件中的行进行排序。我发现这个排序函数是一个 make 函数(内置函数)。
$(sort list)
我的想法:
$(UNSORT) = $(cat input.txt)
$(SORTED) = $(sort $(UNSORT))
@echo $(SORTED) >output.txt
..但这项工作不是:S
任何人都可以帮忙吗?
我想从makefile中对txt文件中的行进行排序。我发现这个排序函数是一个 make 函数(内置函数)。
$(sort list)
我的想法:
$(UNSORT) = $(cat input.txt)
$(SORTED) = $(sort $(UNSORT))
@echo $(SORTED) >output.txt
..但这项工作不是:S
任何人都可以帮忙吗?
以这种方式调用排序命令
sort text.txt > output.txt
$()
在赋值过程中,您不应将变量名括起来。所以前两个赋值语句的形式应该是VARIABLE = some_value
第二个问题是调用cat
. 要运行任何 shell 命令,我们必须使用 make 的内置函数$(shell ...)
。简单的$(cat ...)
不行。
进行这些更正后,脚本运行良好:
UNSORT = $(shell cat input.txt)
SORTED = $(sort $(UNSORT))
all:
@echo $(SORTED) > output.txt