【发布时间】:2013-07-31 17:08:54
【问题描述】:
我正在尝试将匹配特定模式的电子邮件重定向到 shell 脚本,该脚本将创建包含文本的文件,文件名带有日期戳。
首先,这是 .procmailrc 中将电子邮件交给脚本的例程:
:0c:
* Subject: ^Ingest_q.*
| /home/myname/procmail/process
这里是脚本“进程”:
#!/bin/bash
DATE=`date +%F_%N`
FILE=/home/myname/procmail/${DATE}_email.txt
while read line
do
echo "$line" 1>>"$FILE";
done
我对此感到非常沮丧,因为我可以在命令行上将文本通过管道传输到该脚本并且它工作正常:
mybox-248: echo 'foo' | process
mybox-249: ls
2013-07-31_856743000_email.txt process
该文件包含单词“foo”。
几个小时以来,我一直在尝试获取电子邮件文本以将输出作为带日期戳的文件,但没有任何效果。
(我还在我的 .procmailrc 中打开了登录,但这也不起作用——我不是想通过提及这一点来问第二个问题,只是想知道这是否可以为我提供一些提示可能做错了...)。
谢谢,
GB
【问题讨论】:
-
如果您无法打开日志记录,我怀疑您的
.procmailrc永远不会被读取,因此配方永远不会被触发。试试 debugging 你的 procmail 设置。 -
谢谢你,Ansgar——这是一个有用的页面。我正在处理它。
标签: bash redirect input procmail