Aix中crontab需要注意的事项

1、crontab命令的默认shell是/usr/bin/bsh,如果要在cron启动的脚本中使用ksh,就必须在脚本中的第一行添加“!/usr/bin/ksh”的声明。

2、如果cron进程启动的shell脚本设置了用户登录时的环境变量,就必须在cron启动的shell脚本中添加下面的内容,才能够在启动的脚本中使用
$home/.profile文件中的环境变量。

. $home/.profile

这是因为cron进程执行的shell脚本是不会自动加载用户目录下的.profile文件,所以需要脚本自己加载所需要的环境变量。

3、不可见字符<可以用cat -vte xxx 查看是否有不可见字符>

4、最好的建议只使用root的crontab 然后需要别的用户的crontab的时候使用su 过去执行

例如 0 * * * * * su - monitor -c '/sh/abc.sh'

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
AIX crontab不执行的原因可能是由于cron队列的运行限制已经达到最大值。这个问题通常会在/var/adm/cron/queuedefs文件出现错误消息"! cron: 0481-087 The c queue maximum run limit has been reached."。为了解决这个问题,您可以按照以下步骤进行操作: 1. 使用vi编辑器打开/var/adm/cron/queuedefs文件。 2. 在文件添加一行"c.200j20n60w"来增加队列的最大作业数。这将将默认的最大作业数从50增加到200。 3. 保存并关闭文件。 4. 使用kill命令杀死cron进程,以便新的cron设置生效。 5. cron进程将会重新启动,并应用新的设置。 请注意,您需要替换命令的PID为实际的cron进程号。 请注意,如果在执行crontab时出现错误消息"! cron: 0481-087 The c queue maximum run limit has been reached.",这意味着cron队列的最大运行限制已经达到。您可以通过修改/var/adm/cron/queuedefs文件来增加队列的最大作业数。在文件,您可以使用vi编辑器将"b"更改为"c",并将"50"更改为"200"。添加一行"c.200j20n60w"。修改完成后,使用kill命令杀死cron进程,并在重新启动时生效。 另外,您还可以参考一个来自博客的例子,以设置一个低优先级的批处理队列。这个例子使用了"b.50j20n60w"的设置,其"b"表示低优先级,"50"表示最大作业数,"20"表示nice值,"60"表示作业间隔,并且"w"表示每周运行。 请注意,这些步骤和例子都是为了解决AIX crontab不执行的问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值