【问题标题】:Linux run-parts not working with php filesLinux 运行部件不适用于 php 文件
【发布时间】:2018-09-11 04:35:25
【问题描述】:

我正在关注tutorial 关于 linux 的 cron 作业。我想使用cron.hourly 文件夹来运行php 脚本。在教程中,它指出文件夹由脚本控制:

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly

我可以使用以下方法轻松运行和测试脚本:

$ /etc/cron.hourly/test.php

这很好用。但是当我测试脚本时:

$ run-parts /etc/cron.hourly

什么都没有发生。 run-parts 是否适用于 php 文件?

run-parts --test /etc/cron.hourly 什么也没给我

【问题讨论】:

    标签: php linux cron


    【解决方案1】:

    文件名的默认模式是(^_?([a-z0-9_.]+-)+[a-z0-9]+$)

    • 这意味着像00-init 这样的文件会匹配。

    • 通常没有文件扩展名(例如.php

    因此,要么重命名您的文件,要么使用 run-parts--regex='[\w\.]+' 选项。

    • 同时检查 -v --list 然后检测到哪些文件名。

    【讨论】:

    • 那么为什么 test.php 仍然可以作为没有 .php 扩展名的 php 文件运行呢?谢谢马里奥!我从来不知道我可以摆脱扩展。
    • 好吧,我假设您已经使其可执行并且已经拥有适当的 shebang #!/usr/bin/php。在这种情况下,文件扩展名通常是多余的。只要脚本可执行,所有.sh.py 都只是装饰。
    • 是的,我有 #!/usr/bin/php。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2018-11-18
    • 2017-03-02
    • 1970-01-01
    • 2011-03-09
    • 2016-10-15
    • 2018-05-02
    • 2016-07-04
    • 2018-07-12
    相关资源
    最近更新 更多