linux 下 cron自动 执行脚本 问题..急

萧学森 2010-12-16 03:42:25
写了一个脚本 用来定时重启tomcat服务
脚本内容如下:
#!bin/sh

echo `date` "keepalived stop ..." >>/var/log/sseerp.log
/etc/init.d/keepalived stop

echo `date` "tomcat stop ..." >>/var/log/sseerp.log
/home/sseerp/tomcat/bin/shutdown.sh
sleep 2

echo `date` "tomcat start ..." >>/var/log/sseerp.log
/home/sseerp/tomcat/bin/startup.sh

echo `date` "keepalived start ..." >>/var/log/sseerp.log
/etc/init.d/keepalived start

当我手动执行这个脚本的时候完全没问题
当我放在cron.daily 这个按时执行的文件夹里让系统自动执行这个脚本的时候就出现日期变成英文的了.很困惑.

在网上查了很多设置shell脚本的环境变量都不成功.请各位帮忙.谢谢
...全文
188 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
steptodream 2010-12-16
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 bug_zone 的回复:]

还有个问题..就是那个#!bin/sh开头...我不知道这个要不要加..是不是每个sh脚本都要加这个打头..我试了不加也没问题也能执行sh脚本 ..这地方有点不太明白..
[/Quote]
这个是指定哪种shell来解析执行你的脚本。
有csh ksh bash等等 shell不通 在语法等很多细节上是有区别的。
steptodream 2010-12-16
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 rain208 的回复:]

引用 1 楼 justkk 的回复:
在脚本的第一行之后加入
. ~/.bash_profile


这个就可以解决所有环境变量的问题了。
[/Quote]
这个里面没有LANG!
萧学森 2010-12-16
  • 打赏
  • 举报
回复
恩恩....好的谢谢...
Rain208 2010-12-16
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 justkk 的回复:]
在脚本的第一行之后加入
. ~/.bash_profile
[/Quote]

这个就可以解决所有环境变量的问题了。
萧学森 2010-12-16
  • 打赏
  • 举报
回复
还有个问题..就是那个#!bin/sh开头...我不知道这个要不要加..是不是每个sh脚本都要加这个打头..我试了不加也没问题也能执行sh脚本 ..这地方有点不太明白..
萧学森 2010-12-16
  • 打赏
  • 举报
回复
熊哥V5...其实本来也就是想着设置环境变量..但是不知道要设这个环境变量 ..
freetstar 2010-12-16
  • 打赏
  • 举报
回复
export LANG="zh_CN.GB2313"
设置成中文的
萧学森 2010-12-16
  • 打赏
  • 举报
回复
关键是如果我手动执行这个脚本重启.系统首页有个显示日期+星期的时候星期是中文的正常..而自动 重启后..日期log里面是英文的..而系统首页显示的日期也是中文的..偏偏是星期是英文的..所以很苦恼.感觉是这个自动重启脚本没设环境变量的问题...我先试试吧
空的 2010-12-16
  • 打赏
  • 举报
回复
观摩。。
脚本啥的不会写,
steptodream 2010-12-16
  • 打赏
  • 举报
回复
估计是环境变量LANG的问题
echo $LANG 看看你现在显示中文的LANG的值是多少
如果是zh_CN.UTF-8

那么再你的脚本#!bin/sh的下一行追加一句
export LANG="zh_CN.UTF-8"

然后再试试

但是 英文的日期有问题吗?没有人看不懂把
justkk 2010-12-16
  • 打赏
  • 举报
回复
在脚本的第一行之后加入
. ~/.bash_profile

18,777

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 专题技术讨论区
社区管理员
  • 专题技术讨论区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧