免费注册 查看新帖 |

Chinaunix

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

source与sh执行的结果不一样 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-04-11 14:18 |只看该作者 |倒序浏览
本帖最后由 无语的奇迹 于 2011-04-11 15:29 编辑

我执行了source a.sh  最后会显示www_demo1_com_access.log_201104111411-201104111416
a.sh内容:
logfile=/var/log/apache2/www_demo1_access.log
logfile_aws=$logfile'_aws'
logfile_old=$logfile'_'$sdate'-'$edate
sdate=`date +%Y%m%d%H%M`
/bin/mv $logfile $logfile_aws
/bin/touch $logfile
edate=`date +%Y%m%d%H%M`
/bin/mv $logfile_aws $logfile_old


但是当我添加到crontab里面执行的时候
0 * * * * /bin/bash  a.sh
显示的结果确是www_demo1_com_access.log_-这样的结果 时间变没了,请问该如何解决呢?才能与source a.sh 的结果一样

论坛徽章:
0
2 [报告]
发表于 2011-04-11 14:22 |只看该作者
楼主把sdate=`date +%Y%m%d%H%M`
和edate=`date +%Y%m%d%H%M`
写到logfile_old=$logfile'_'$sdate'-'$edate
前面去

论坛徽章:
0
3 [报告]
发表于 2011-04-11 14:38 |只看该作者
sh -x a.sh  就可以看到脚本的执行过程了

论坛徽章:
0
4 [报告]
发表于 2011-04-11 15:04 |只看该作者
本帖最后由 无语的奇迹 于 2011-04-11 15:16 编辑

回复 2# wake2000x


    我按照你的想法测试了下可以,但是没有时间差了~~~

论坛徽章:
0
5 [报告]
发表于 2011-04-11 15:11 |只看该作者
回复 3# licong_jay


    嗯,谢谢 确实很好用

论坛徽章:
0
6 [报告]
发表于 2011-04-11 15:12 |只看该作者

论坛徽章:
0
7 [报告]
发表于 2011-04-11 15:28 |只看该作者
你当时刚写的脚本你 source  得用  第 2次才得到你想要的吧!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP