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