在crontab中执行脚本重要事项
crontab不能成功执行shell脚本的可能原因
- crond进程不存在,该进程是crontab的守护进程,它必须存在才能让crontab正常使用;
- 系统时间不对;
- 环境变量的问题:crontab执行脚本的时候不会读取用户的环境变量等配置,所以可能很多命令不能使用导致脚本执行失败;
- 脚本本身的问题。
针对以上几点,在使用crontab之前,我们应该:
检查crond进程是否正在正常运行;
这个很少见,毕竟大多数情况我们的时间都很标准,不过要是用不熟悉的机器,最好还是date一下;
这个应该是最容易出现的问题了,针对这种问题:
a. 在编写shell脚本的时候尽量用绝对路径使用命令;b. 在脚本开头export一下路径(长见的命令一般在/bin,/sbin,/usr/bin,/usr/sbin这几个路径下,所以不妨全部export一下:
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
export LANG=en_US.UTF-8
如果不全部export的话,记得把使用到的命令which一下以确定命令的真实路径;
c. 使用脚本调用别的脚本,比如有三个脚本:run1.sh,run2.sh,run3.sh,假设这三个脚本都使用了cat、grep等命令,那么它们直接放在crontab中是不会被成功执行的,这时候我们可以写个run.sh,在run.sh中调用run1.sh,run2.sh,run3.sh,这样就不需要考虑export环境变量的问题,因为run.sh并没有使用系统命令,而run.sh调用run1.sh的时候已经不是crontab在管理了,所以会读取用户的环境变量。
- 拉出去枪毙吧,只能自己检查问题了,可以先手动执行一次,如果成功执行再考虑crontab相关的问题,不然诸如没有+x就放进crontab的问题肯定是不该的。
在crontab中执行脚本重要事项的更多相关文章
- linux下使用crontab定时执行脚本
使用crontab定时执行脚本 cron服务是一个定时执行的服务,可以通过crontab 命令添加或者编辑需要定时执行的任务: crontab –e : 修改 crontab 文件,如果文件不存在会自 ...
- crontab 定时执行脚本出错,但手动执行脚本正常
原因: crontab 没有去读环境变量,需要再脚本中手动引入环境变量,可以用source 也可以用export 写死环境变量. 为了定时监控Linux系统CPU.内存.负载的使用情况,写了个Shel ...
- 在crontab中执行shell脚本的问题
crontab中记录的编写比较简单,下面是一个示例: * * * /app/tpssapp/ftpsrc/tools/statTables/statTables.sh > /app/tpssap ...
- UNIX crontab自动执行脚本
crontab 是不会加载环境变量的你手动执行可以是因为登录了oracle用户加载了环境变量,你可以在脚本里添加,echo $ORACLE_HOME echo $ORACLE_SID 等等试试,看看 ...
- 解决mysql5.6+在zabbix监控中执行脚本出现密码的错误问题
1.mysql命令行中授权mysql监控所需的账号和密码(权限select权限即可) 2.通过mysql_config_editor 配置登录问题: [root@back_zabbix_100 scr ...
- Python文件中执行脚本注释和编码声明
在 Python 脚本的第一行经常见到这样的注释: #!/usr/bin/env python3 或者 #!/usr/bin/python3 含义 在脚本中, 第一行以 #! 开头的代码, 在计算机行 ...
- 使用crontab定时执行脚本时别忘了输出重定向>
原文:https://blog.csdn.net/solmyr_biti/article/details/50683279 -------------------------------------- ...
- Selenium在IE浏览器中执行脚本时输入字符太慢问题解决方法
问题描述: IE浏览器中执行Selenium脚本的时候发现输入文本的时候总是一个字符一个字符的输入,并且输入每个字符之间都隔几秒. 解决方案: 将使用的IE浏览器驱动由64位的换成32位的.
- 在pycharm中执行脚本没有报错但输出显示Redirection is not supported.
没有新式语法错误,但是输出显示Redirection is not supported.(不支持重定向) 在stockflow中找到是因为从IDE中运行脚本的原因,比如pycharm,所有IDE都提供 ...
随机推荐
- php 页面压缩---
网站优化中,页面压缩是很有效的一种方法,可以明显提升页面访问速度. 页面压缩也有很多的方法,有PHP自带的zlib的gzip压缩,还有清除html页面中不必要的字符,空格,注释,换行符等. 第一种打开 ...
- CF F. MST Unification (最小生成树避圈法)
题意 给一个无向加权联通图,没有重边和环.在这个图中可能存在多个最小生成树(MST),你可以进行以下操作:选择某条边使其权值加一,使得MST权值不变且唯一.求最少的操作次数. 分系:首先我们先要知道为 ...
- 解决页面使用overflow: scroll,overflow-y:hidden在iOS上滑动卡顿的问题
解决页面使用overflow: scroll,overflow-y:hidden在iOS上滑动卡顿的问题 div{ width: 100%; overflow-y: hidden; -webkit-o ...
- [转] Nook Glowlight Plus入门指南(Root及相关软件设置)
[From] http://www.dakang.info/nook-glowlight-plus-root/ 本文仅仅是对大神 xukong及众多热心Hper帖子的一个汇总,稍作个人补充,方便查询, ...
- npm install 卡住的时候的处理
[From] http://www.eguidedog.net/doc/what-to-do-when-npm-install-hangs.php 翻译一下,npm install 经常卡在下载某个包 ...
- docker容器启动几分钟之后自动退出
2018-11-06 问题: docker容器启动几分钟之后自动退出 log日志报错 WARNING: overlay2: the backing xfs filesystem is formatte ...
- google chrome 高版本 解除禁止添加本地扩展
1.下载chrome.adb文件,找不到的可以到https://pan.baidu.com/s/1j67vz_b6CwKfCH_uZzSfgA 这里下载2.Win+R 输入 gpedit.msc 3 ...
- PIE SDK元素的选择和取消选择
1功能简介 在数据的查看等时候会用到元素的选择, 目前PIE SDK支持元素的选择和去取消选择功能,下面对这两种功能如何使用进行介绍. 2功能实现说明 2.1元素的选择 2.1.1 实现思路及原理说明 ...
- sql 死锁
先上代码connectA: BEGIN TRAN UPDATE dbo.Student SET Sorce= WHERE id= waitfor delay '00:00:05' SELECT * F ...
- 简单实现 ArrayList
java中提供了多个集合框架 其中就有ArrayList 下面简单的实现一下 只写了添加,获取长度和根据下标获取元素的方法 public class MyArrayList { //定义一个obje ...