我必须找到所有具有特定数据的记录,这些记录我将作为命令行参数传递。如何在AWK中插入shell脚本的命令行参数?
AWK表达是这样的(是日期以这种格式:'02/08/2013' )
猫records.txt | awk -F',''$ 4〜/ 02/08/2013/{print $ 1 $ 2}'
第4栏是日期栏。
我想要做的是提供日期作为第一个参数并进行比较。
我试过这个,但它不工作。
cat records.txt | awk的-F '' -v awkvar = “$ 1” '$ 4〜/ ^“awkvar/{打印$ 1 $ 2}'
这里的日期栏与开始”的报价,所以我告诉去寻找谁与开始记录“+ awkvar给定日期
谁能帮我这个
编辑:?
的awk -F '' -v VAR1 = “$ 1”“$ 4〜/^“2013/{print $ 1 $ 2}'{这个人正在工作,因为我直接比较了2013年的记录}
当我做这个
的awk -F '' -v VAR1 = “$ 1” '$ 4〜/ ^“VAR1/{打印$ 1 $ 2}',它不返回任何东西,什么是区别。
是的,这是我做过什么,我也更新了这篇文章,你认为它应该起作用吗?我从昨天开始一直在试这个吗? – Dude 2013-02-14 10:18:47
重试后编辑 – 2013-02-14 10:25:47
当我这样做的时候cat data.csv | awk -F','-v var1 =“$ 1”'$ 4〜/ ^“2013/{print $ 1 $ 2}',当我使用第一个参数cat进行匹配时,我得到了输出BUTUTFs | awk -F ','-v var1 =“$ 1”'$ 4〜/ ^“var1/{print $ 1 $ 2}',它没有给我任何东西 – Dude 2013-02-14 10:27:59