Добавление файла в crontab через скрипт php

0

Я нашел на этом форуме, что можно редактировать crontab следующим образом:
а. crontab -l> $ tmpfile
б. edit $ tmpfile
с. crontab $ tmpfile
д. rm $ tmpfile
Итак, я пытаюсь реализовать это решение на php:

include('Net/SSH2.php');
$ssh = new Net_SSH2('myhost');
if (!$ssh->login('user', 'password')) 
{
    echo'Login Failed';
}

    $ssh->exec('crontab -l > /var/www/tmp.txt');
    $content=file_get_contents("/var/www/tmp.txt");
    $content.='0 0 1 * * /usr/bin/php /var/www/clearPreviousMonth1.php';
    $file=fopen("/var/www/tmp.txt", "w");
    fputs($file,$content);
    fclose($file);
    $ssh->exec('crontab /var/www/tmp.txt');
    echo $content;

Я вижу отредактированный контент crontab в моем браузере и файле tmp, но когда я использую crontab -e, он не изменился. Какая моя ошибка?

Теги:

1 ответ

0

Я должен был добавить новую строку до конца файла. В другом случае он не добавляется к crontab. изменил $content.='0 0 1 * */usr/bin/php/var/www/clearPreviousMonth1.php'; до $content.="0 0 1 * */usr/bin/php/var/www/clearPreviousMonth1.php\n"; обратите внимание, что необходимо использовать " вместо ', потому что он просто добавит символы \n в последнюю строку

Ещё вопросы

Сообщество Overcoder
Наверх
Меню