cat list.txt
1 apple 4 30 f 2 potato 2 40 v 3 orange 5 10 f 4 grapes 10 8 f
重定向到一个变量存储AWK在bash
脚本:的GetList ::
if [[ "[email protected]" == *[f]* ]] ; then
awkv1 = $(grep f | awk '{ print $2 $3 }')
else
awkv1 = $(awk '{ print $2 $4 $5 }')
fi
cat list.txt | $(awkv1)
我有一个可变awkv1存储取决于参数 'F' 的值。 但它不工作。 跑步:: getlist f
不会做任何事情。
它应该像这样:: 如果“F”的参数传递,然后:: cat list.txt | grep f | awk '{ print $2 $3 }'
否则:: cat list.txt | awk '{ print $2 $4 $5 }'
如果另一列匹配'F'?假设你在第二列中有一个“水果”,但在末尾而不是“f”处有“v”。 – e0k
我想问一下,我有这个'awkv1'变量,它的值取决于条件。但重定向到'awkv1'变量存储awk命令不起作用。 'cat list.txt | $(awkv1)' – jonny789
你真的想做什么?我看到的所有或大部分内容都可以在一个简单的awk调用中完成。 – e0k