如何在Makefile中使用awk中的$ 1,$ n

时间:2016-10-15 20:08:26

标签: awk makefile

我有这个来获取我的python文件的行数与相对路径和正确的行数填充:

$ find ./ -name "*.py" -exec wc -l {} \;| awk '{printf "%10s %s\n", $1, $2}'
 29 ./setup.py
 28 ./proj_one/setup.py
896 ./proj_one/proj_one/data_ns.py
169 ./proj_one/proj_one/lib.py
310 ./proj_one/proj_one/base.py
  0 ./proj_one/proj_one/__init__.py
 72 ./proj_one/tests/lib_test.py

我想在Makefile ::

中使用它
 $ cat Makefile
 pfile_wc:
            @find ./ -name "*.py" -exec wc -l {} \;| awk '{printf "%10s %s\n", $1, $2}'

所以我可以用它来打电话:

$ make pfile_wc

我无法正确转义/使用Makefile中的$1$2

1 个答案:

答案 0 :(得分:2)

您必须在前面加上另一个符号:

@find ./ -name "*.py" -exec wc -l {} \;| awk '{printf "%10s %s\n", $$1, $$2}'