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系统,即可。