我需要使用bash脚本来监控用户表,并向包含新创建的用户名的销售团队发送通知电子邮件。
我是脚本新手,对如何做到这一点有点了解。
感谢任何帮助或指示。
答案 0 :(得分:3)
您将问题标记为DB2,在RDBS中您可以创建通过电子邮件发送消息的触发器。在这种情况下你不需要bash。
假设您有一个名为users的表,每次插入新行时,都会发送一封电子邮件。
CREATE or replace trigger t1
after insert on users
REFERENCING NEW AS N
FOR EACH ROW
BEGIN
DECLARE v_sender VARCHAR(30);
DECLARE v_recipients VARCHAR(60);
DECLARE v_subj VARCHAR(20);
DECLARE v_msg VARCHAR(200);
SET v_sender = 'kkent@mycorp.com';
SET v_recipients = 'bwayne@mycorp.com,pparker@mycorp.com';
SET v_subj = 'New user';
SET v_msg = 'There is a new user: ' || n.username;
CALL UTL_MAIL.SEND(v_sender, v_recipients, NULL, NULL, v_subj, v_msg);
END@
您必须使用SMTP服务器和其他参数配置DB2:http://pic.dhe.ibm.com/infocenter/db2luw/v10r5/topic/com.ibm.db2.luw.apdv.sqlpl.doc/doc/r0055176.html
答案 1 :(得分:1)
可能是您可以使用inotify
工具来检测文件修改并使用mail
工具在您的脚本中发送邮件,至于如何使用该命令,请参考具体的文档。
答案 2 :(得分:1)
要发送电子邮件,您可以使用gmail + mutt
。只需按照this教程了解如何配置mutt
。
配置mutt后,您可以使用如下命令从脚本发送电子邮件:
echo "$BODY" | mutt -s "$SUBJECT" $EMAIL_ADDRESS
一个例子是:
echo "User Bob has been added." | mutt -s "New User" example@example.com
您还可以考虑使用prowl向IOS设备发送推送通知。可以从bash脚本执行的Prowl has a perl script。这将提供近乎即时的通知。 Prowl还可以优先处理通知。