我正在尝试自动检查缺少的路线Play! Web应用程序。 路由表采用以下格式的文件:
GET /home Home.index
GET /shop Shop.index
我已经设法使用我的命令行-fu来抓取我的代码并列出文件中应该存在的所有操作。此列表采用以下格式:
Home.index
Shop.index
Contact.index
About.index
现在我想将此文本的输出传递给另一个命令,该命令检查路由文件中是否存在每一行。我不知道该怎么办。
结果应该是这样的:
Contact.index
About.index
有人对如何实现这一目标有一个有用的建议吗?
答案 0 :(得分:2)
试试这一行:
awk 'NR==FNR{a[$NF];next}!($0 in a)' routes.txt list.txt
修改强>
如果您希望上述行从stdin接受list
:
cat list.txt|awk 'NR==FNR{a[$NF];next}!($0 in a)' routes.txt -
使用魔术命令
替换cat list.txt