检测新文件,并使用mpack发送

时间:2016-10-25 19:25:20

标签: linux email debian attachment

我有一个非常具体的问题。我正在使用Debian。 我有一个FTP文件夹,应用程序将上传pdf文件,该文件将存储在ftpfolder / EMAIL_ADDRESS中,文件名称为CURRENT_DATE_AND_TIME。

我想要做的是每当在任一EMAIL_ADDRESS文件夹中上传新文件时,都要使用mpack发送文件。您可能已经猜到我希望将文件发送到文件夹的名称,并附上文件。

所以为了打破它我需要:

  • 每当上传新文件时都会检测到
  • 从foldername
  • 中提取地址
  • 提取文件名,并将其附加到mpack
  • 发送

我对如何处理这个问题感到困惑,所以任何建议都将不胜感激!

1 个答案:

答案 0 :(得分:0)

如果一个cron会启动一个脚本来完成你需要的所有东西,然后归档在另一个文件夹中找到的文件?

#!/usr/bin/env bash
cd ftpfolder; 
for email in *; do 
    mpack -s "New PDF file uploaded" $email/* $email; 
    mv $email /archivefolder; 
done

优点:

  • 简单

缺点:

  • 您必须具有移动文件的写入权限
  • 弄乱原始文件

请注意,上面的脚本假定在cron执行之间的文件夹中只出现一个文件。如果您无法保证(即在一分钟内预期有多个文件),您可能需要遍历文件夹内容。