我正在尝试做我认为非常复杂的任务。
我想执行一个 PHP 脚本,但前提是 /var/import 中存在名为 import_products.csv 的文件。原因是该脚本尝试导入上述 CSV 文件,因此如果它每分钟都尝试运行该脚本,我不希望它出错。
另一方面,如果有文件,我确实希望脚本每分钟运行一次(甚至每分钟 2 或 4 次)。所以我的设想是这样的。
我会创建每分钟运行一次的 cron 作业,它执行以下操作:
- 检查 /var/import/import_products.csv 是否存在
如果它不存在,请立即退出脚本。
- 执行 product_import.php (这将与我的 cronjob 文件存储在同一文件夹中)
- 执行完成后,删除 /var/import/import_products.csv
我将使用一个单独的守护进程来生成这些 CSV 文件,这里的所有必要条件是它只在文件存在时运行 PHP 脚本。
如果有办法在不使用 cron 的情况下做到这一点,那也可以。基本上我只希望它在每次写入新的 import_products.csv 时运行该 PHP 脚本,然后删除该文件。Cron 作业是我确信可以做到这一点的唯一方法。