Shell 如何在Makefile中使用awk?

Shell 如何在Makefile中使用awk?,shell,awk,makefile,Shell,Awk,Makefile,我有一个Makefile,它需要使用awk从文本文件`someText.txt中提取一些信息。以下是一个例子: 在控制台中手动对我的文本文件执行awk效果非常好: $ cat someText.txt | awk '/Total number:/ {print $NF}' $ 42 但在我的makefile中使用它不起作用: MYVAR=$(shell cat someText.txt | awk '/Total number:/ {print $NF}') all: @echo Co

我有一个Makefile,它需要使用awk从文本文件`someText.txt中提取一些信息。以下是一个例子:

在控制台中手动对我的文本文件执行awk效果非常好:

$ cat someText.txt | awk '/Total number:/ {print $NF}'
$ 42
但在我的makefile中使用它不起作用:

MYVAR=$(shell cat someText.txt | awk '/Total number:/ {print $NF}')
all:
    @echo Count: $(MYVAR)
输出为:
Count:


但是我建议输出是
Count:42

MYVAR=$(shell cat someText.txt | awk'/总数:/{print$$NF}')

可能的重复,作为一种补充,您还希望避免TL;DR您需要将每个应传递到shell的
$$
加倍。triple是指
awk'/Total number:/{print$NF}'someText.txt
Yes,就是这样。我忽略了花括号内的美元。使用
{print$$NF}
效果很好。