要一个shell
你的编译形式需要有php的执行程序,如/usr/bin/php
要写一个计划任务 crontab -eshell为/root/backup.php加上可执行权限,内容如下:
#!/usr/bin/php -q
<?
$now=mktime();
$yesterday=$now-86400;
$result=getdate($yesterday);
$year=$result[year];
$month=sprintf("%02d",$result[mon]);
$day=sprintf("%02d",$result[mday]);
//make file_name
$filename="*_".$year."_".$month."_".$day.".dat";
$exec_1="zip gz3usrdata ".$filename;
system($exec_1);
?>crontab -e
加上一行
05 0 * * * /root/backup.php

解决方案 »

  1.   

    兄弟我现在要执行/cc/aa.php
    在每天凌晨0点10分去执行它.
    是不是只要使用crontab -e 
    加上一行10 24 * * * /cc/aa.php这样可以吗?
      

  2.   

    17.crontab
    (1)简介
    crontab:操作每个用户的守护程蚝透弥葱械氖奔浔怼?br> 作者 Matthew Dillon
    (2)部分参数说明
    crontab file [-u user]:用指定的文件替代目前的crontab。
    crontab - [-u user]:用标准输入替代目前的crontab。
    crontab -l [ user]毫谐鲇没壳暗腸rontab。
    crontab -e[ user]:编辑用户目前的crontab。
    crontab -d[ user]:删除用户目前的crontab。
    crontab -c[ user]:指定crontab的目录。
    crontab文件的格式:M H D m d cmd
    M:分钟(0-59)
    H:小时(0-23)
    D:天(1-31)
    m:月(1-12)
    d:一星期内的天(0-6,0为星期天)
    cmd:要运行的程序,程序被送入sh执行,这个shell只有USER,HOME,SHELL这三个环境变量。
    下面是一个例子文件:
    # MIN HOUR DAY MONTH DAYOFWEEK COMMAND
    # 每天早上6点
    10 6 * * * date
    # 每两个小时
    0 */2 * * * date
    # 晚上11点以早上8点之间每两个小时,早上8点
    0 23-7/2,8 * * * date
    #每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点
    0 14 4 * mon-wed date
    # 1月份日早上4点
    0 4 1 jan * date
    (3)范例
    lark:->crontab -1 列出用户目前的crontab。
    # MIN HOUR DAY MONTH DAYOF WEEK COMMAND
    10 6 * * * date
    0 */2 * * * date
    0 23-7/2, 8 * * * date
    lark:->
      

  3.   

    使用php -q /cc/aa.php
    可以成功执行这个文件.
    但我不知道crontab 命令下是否可以使用如下
    crontab -e10 * * * * php -q /cc/aa.php好象在进程中提示密码entry
      

  4.   

    这已经不是PHP讨论的范围了.
    我想知道的是如何在win下可以定时执行php程序?
      

  5.   

    win下我知道.而且成功实施过.其實windows 內有一個小程式就是叫做**排定的工作** 
    他的位置是在**我的電腦**>>**控制台**>> 然後雙按**排定的工作** 
    然後,你再按**新增排定的工作**,跟著按**下一步** 
    然後,你按一下**瀏灠**,切換到你php的目錄,再雙按**php.exe** 
    跟著,你就可以為這一個工作取一個名字,和設定這一個工作的執行方式!! 
    然後在按下一步,然後跟著指示做(那一些我想你會的^_^,不用讓我在多寫)!! 
    最後按完成!! 
    最後,我解釋一下 
    e:/www/php/php.exe -f e:/1.php 的意思 
    e:/www/php/php.exe-->指的是php.exe的位置 
    -f 執行檔案的命令!! 
    e:/1.php指的就是php檔案的位置!!
      

  6.   

    急切要知道linux下的实施方法.....先谢了.如果分不够我还可以追加若干.......谢谢.......急.
      

  7.   

    兄弟你是以root身份运行crontab -e吗?如果不是,你就切换成root再执行crontab -e
      

  8.   

    我是以root身份运行的呀
    兄弟给我一个实例..谢了先
      

  9.   

    使用php -q /cc/aa.php
    可以成功执行这个文件.
    但我不知道crontab 命令下是否可以使用如下
    crontab -e10 * * * * php -q /cc/aa.php好象在进程中提示密码entry
    急你这样不是按我说的我说的是先做一个shell,存成/root/backup.php,用chmod o+x /root/backup.php 加上可执行权限shell文件如下:
    =================================
    #!/usr/bin/php -q
    <?
    $now=mktime();
    $yesterday=$now-86400;
    $result=getdate($yesterday);
    $year=$result[year];
    $month=sprintf("%02d",$result[mon]);
    $day=sprintf("%02d",$result[mday]);
    //make file_name
    $filename="*_".$year."_".$month."_".$day.".dat";
    $exec_1="zip gz3usrdata ".$filename;
    system($exec_1);
    ?>然后用root 再在crontab -e 里加入一行
    05 0 * * * /root/backup.php
      

  10.   

    crontab -e
    加入
    10 0 * * * root /root/test.php写一个你要执行的shell文件存在/root/test.php,格式如下
    #!/usr/bin/php -q
    <?
    //filename test.php你要执行的程序
    ?>然后给test.php赋权限,命令为
    chmod 777 test.php这样就应该可以了,如果不行的话就重起crontab进程,命令
    killall crontab
    crontab
    应该是运行这两个命令,但我也不知道我是不是记得正确