在后缀pipe道上导出PATHvariables

我正在使用自定义传输来处理传入的邮件。 它用于订阅和取消订阅某个频道。

twailer unix - nn - - pipe flags=FR user=twailer argv=/home/twailer/twailer/bin/twailer 

twailer二进制文件是一个Javascript文件,应该用节点parsing,所以我添加了shebang

 #!/usr/bin/env node 

但是这不起作用,因为$PATH不是由pipe命令导出的。 根据手册,我可以指定哪些环境variablesmain.cf中的export_environment设置中export_environment ,所以我也这样做了。

 export_environment = TZ MAIL_CONFIG LANG PATH=/usr/local/bin:/usr/bin:/bin 

但它仍然不起作用。 所以我用一个shell脚本replace了我的二进制文件,输出当前的$PATH到stderr,我得到了

 Command output: /usr/bin:/bin 

这显然不是我configuration的。

关于如何让我的$ PATHvariables的任何想法通过?

不要尝试做pipe道(8)做一些事情,不要考虑适应它所支持的事情:

 twailer unix - nn - - pipe flags=FR user=twailer argv="/usr/bin/node /home/twailer/twailer/bin/twailer" 

将“/ usr / bin / node”replace为二进制文件的真实path。

至于你在PATH中的黑客问题:如文件所述,

argv =命令…(必需)要执行的命令。 这必须被指定为最后的命令属性。 该命令是直接执行的,即不通过shell命令解释器来解释shell元字符。