快乐向日葵 发表于 2013-1-16 16:42:53

linux和solaris中crontab任务的创建步骤及常见问题解答

一、linux
 
    1、在linux命令行创建任务文件back.sh,
    cd /
    touch back.sh
    vi back.sh
 
    输入如下内容:
   
    
    #!/bin/sh
    . /etc/profile
    . ~/.bash_profile
    str=$(date +%Y%m%d)
    mkdir /$str
 
    保存退出
 
    2、给back.sh文件设置777权限
 
    chmod 777 /back.sh
 
 
    3、添加至crontab任务
 
    crontab -e
 
    添加如下所示内容:
 
    1-59 * * * * /back.sh
 
    保存退出
 
    4、使crontab任务生效
 
    crontab -u root /var/spool/cron/root
 
    OK
 
 
二、solaris
    
    1、在solaris命令行创建任务文件back.sh,
    cd /
    touch back.sh
    vi back.sh
 
    输入如下内容:
   
    
    #!/bin/ksh
    . /etc/profile
    str=$(date +%Y%m%d)
    mkdir /$str
 
    保存退出
 
    2、给back.sh文件设置777权限
 
    chmod 777 /back.sh
 
 
    3、添加至crontab任务
 
    vi /var/spool/cron/crontabs/root
 
    添加如下所示内容:
 
    1-59 * * * * /back.sh
 
备注:
<
第一道第五个字段的整数取值范围及意义是:

0~59 表示分

1~23 表示小时

1~31 表示日

1~12 表示月份

0~6 表示星期(其中0表示星期日)
> 
    保存退出
 
    4、使crontab任务生效
 
    crontab /var/spool/cron/crontabs/root
 
    OK
 
三、常见问题
    1、直接在命令行可以运行,加到crontab任务中不能运行?
 
    答:遇到上述问题,通常是任务文件(*.sh文件)中未导入系统环境变量导致。解决方法:在任务文件中加入上面红色字体部分的内容。
 
 
    2、直接在命令行不能运行,报错(bad interpreter: No such file or directory)?
 
    答:这个问题一般是由于任务文件是在windows系统上以记事本写好后拷贝到linux或solaris系统上运行,系统直接编码不一致导致。解决:在windows系统上用UltraEdit打开该任务文件,执行“文件”》“转换”》“DOS到UNIX”后保存文件,再次拷贝到linux或solaris系统,即可。
页: [1]
查看完整版本: linux和solaris中crontab任务的创建步骤及常见问题解答