免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 4647 | 回复: 12
打印 上一主题 下一主题

AIX53, 如何设置这个定时作业 [复制链接]

论坛徽章:
1
IT运维版块每日发帖之星
日期:2015-08-02 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-03-15 16:04 |只看该作者 |倒序浏览
我需要在CRONTAB 里设置一个作业:在凌晨0点0分时运行,\r\n内容就是把变量today 设置为当天的日期,以便该变量在这一天里\r\n被使用。但不论怎么设置,语句/文件都不运行,如:\r\n\r\n1 00 00 * * * export today=`date +%Y%m%d`\r\n2 00 00 * * * today=`date +%Y%m%d` export today\r\n3 00 00 * * * today=`date +%Y%m%d`\r\n   00 00 * * * export today\r\n4 00 00 * * * /oracle/today.sh\r\ntoday.sh 在/oracle 目录下,里面的内容为\r\nexport today=`date +%Y%m%d`\r\n也设置过 today=`date +%Y%m%d`\r\n然后该文件也被授予了执行权限,但 crontab 就是不运行(得不到期望\r\n的结果)。\r\n\r\n文件/oracle/today.sh 放到$下允许也没得到结果,但若\r\nexport today=`date +%Y%m%d`或 today=`date +%Y%m%d`\r\n然后在 echo $today,则结果都是OK的。\r\n\r\n怎么回事,怎么作?

论坛徽章:
0
2 [报告]
发表于 2006-03-15 22:51 |只看该作者
这个当然不行了。在crontab里面执行的话那么session结束就释放掉了。\r\n比较傻的办法就是把它放到用户的profile里面,如果不影响的话。\r\n其实我不太明白你的意思~!\r\n为什么要在这儿设置

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
3 [报告]
发表于 2006-03-16 09:32 |只看该作者
alias today=date试试\r\n\r\n\r\n还有就是写profile了·

论坛徽章:
1
IT运维版块每日发帖之星
日期:2015-08-02 06:20:00
4 [报告]
发表于 2006-03-16 09:41 |只看该作者
原帖由 kuber 于 2006-3-15 22:51 发表\r\n这个当然不行了。在crontab里面执行的话那么session结束就释放掉了。\r\n比较傻的办法就是把它放到用户的profile里面,如果不影响的话。\r\n其实我不太明白你的意思~!\r\n为什么要在这儿设置
\r\n\r\n因为该变量每天都被用来给新创建的文件命名,这样一看文件名就知道\r\n哪天产生的文件。所以,该变量值必须跟随日期的变化而改变。\r\n\r\n我放在0点0分执行,就是为了在日期变化时,该值跟着变化。\r\n否则,16产生的日志,还用15号的日期。这就不是我所愿的。\r\n\r\n另外,.profile 我也试过,没结果,上面我也说了,即便是放到一个文件里,\r\n结果还是不执行。我不知道我放在一个单独的文件里和放到.profile 有什么\r\n区别。\r\n\r\n请指教。

论坛徽章:
1
IT运维版块每日发帖之星
日期:2015-08-02 06:20:00
5 [报告]
发表于 2006-03-16 09:50 |只看该作者
原帖由 chinadns 于 2006-3-16 09:32 发表\r\nalias today=date试试\r\n\r\n\r\n还有就是写profile了·
\r\n\r\n该值是用作变量,给文件命名的时候使用,此方法 alias today=date\r\n测试过,好像不行。\r\n\r\n请指教。

论坛徽章:
0
6 [报告]
发表于 2006-03-22 14:55 |只看该作者
你试试这么写行不行:\r\n0 0 * * * /path/*.sh\r\n我记得分钟好像是:0~59 而不是00~59

论坛徽章:
0
7 [报告]
发表于 2006-03-23 14:21 |只看该作者
这个当然是在应用程序里自己设定\r\nCRON里设的环境变量不会被外边程序继承,就象你用同一个用户开2个窗口,互相间的环境变量是不影响的.\r\n.PROFILE里也不行 因为只有在用户登陆的时候运行一次 

论坛徽章:
0
8 [报告]
发表于 2006-03-23 15:09 |只看该作者
我想该问题的目的是:\r\n在每天的0时,记录当天的日期;然后在连续运行(多天)的程序中,需要不定期产生一些结果的时候,取用这个日期作为文件名的一部分。是否这样呢?\r\n如果正如上述所假设的,可以采用以下方法:\r\n在cron中定义:\r\n00 00 * * * `date +%Y%m%d`>/home/test/ls.txt\r\n即通过每天定时更新文件来实现所需要的日期更新\r\n然后,在相关运行的程序中取用即可,例如:\r\n在test1.sh中:\r\n   today=`more ls.txt`

论坛徽章:
0
9 [报告]
发表于 2006-03-23 15:49 |只看该作者
放在0点0分执行,就是为了在日期变化时,该值跟着变化。\r\n 有必要吗?

论坛徽章:
1
IT运维版块每日发帖之星
日期:2015-08-02 06:20:00
10 [报告]
发表于 2006-03-28 15:34 |只看该作者
原帖由 chuny 于 2006-3-23 14:21 发表\r\n这个当然是在应用程序里自己设定\r\nCRON里设的环境变量不会被外边程序继承,就象你用同一个用户开2个窗口,互相间的环境变量是不影响的.\r\n.PROFILE里也不行 因为只有在用户登陆的时候运行一次 
\r\n\r\n我在程序里设定的时候,结果文件名带汉字,而引用变量的方法则没有。如:\r\n\r\nbackup_psi_inc_0_20060326.log\r\nbackup_psi_inc_0_20060327.log\r\nbackupdatabasetrace_公元2006年03月26日  星期日  06时00分00秒\r\nbackupdatabasetrace_公元2006年03月27日  星期一  06时00分00秒\r\n\r\n我不希望文件名里有汉字。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP