我使用procmail来过滤涉及从mysql中检索结果的电子邮件,但Procmail配方返回了我不想要的列名和结果。变量result没有在行之前声明或使用:下面是我的procmail中的行:
{
result=`mysql -uuser -ppasscode dbname -e "select raw_data from tablex where id='"$msgID"'`
result=`echo "$result"
}如何使它/重写它在结果中不返回raw_data?
发布于 2017-02-27 14:34:39
这不是一个真正的Procmail问题。具体地说,对于MySQL,获得不带标头的查询结果的方法是使用mysql -N -s,如nominated duplicate question中所述。
在更一般的情况下,您可以在反引号内使用任意复杂的shell脚本。要隐藏某些内容的第一行,请通过tail +2对其进行管道传输。
result=`mysql ... whatever | tail +2`在这个有限的上下文中,大括号没有做任何有用的事情(尽管如果这是您没有向我们展示的食谱的动作部分,那么它们在那里是必要的)。类似地,result=`echo "$result"`根本没有做任何有用的事情,只是启动另一个shell将变量的值赋回给它自己clumsily.
https://stackoverflow.com/questions/42462666
复制相似问题