当前位置:首页 » 网页前端 » crontab执行脚本没有生效
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

crontab执行脚本没有生效

发布时间: 2022-08-05 07:23:05

‘壹’ 用crontab 定时执行python脚本不生效是什么原因

编辑/etc/crontab 末尾加入0 8 * * * root /path/A.sh0 18 * * * root /path/A.sh保存 退出即可

‘贰’ crontab执行perl脚本不成功:手动执行perl脚本没问题

chmod 755 文件夹

‘叁’ crontab中启动的shell脚本不能正常运行,但是使用手动执行没有问题

1、这种情况多数为环境变量加载问题
2、例如你用ls命令,其实依赖PATH环境变量
3、可以改为全路径,比如/bin/ls
4、或者将环境变量加载到脚本
#!/bin/sh
. ~/.bash_profile
ls -lrt $*

‘肆’ 使用crontab,定时执行一个python脚本,怎么不能用

注意两点:
1. crontab 不会有你设的环境变量
2. crontab 要用绝对路径


正确做法写一个shell脚本,在脚本内设置环境变量及执行python语句,然后crontab执行该脚本。

#/usr/bin/bash
PATH=/home//Python-3.3.3:/home//Python-3.3.3/bin:$PATH
python/home/xxx.py

‘伍’ linux下的crontab配置后怎么不能执行

经验之谈:
1、查看语法是否错误,如分钟取值范围为 0-59; 小时取值范围 0-23;最多5列时间单位等。
2、查看crond进程是否启动。

3、查看/var/log/cron日志,确定脚本是否在需要的时间内执行了。
4、由于环境变量原因,脚本中的命令尽量写全路径,如 touch 写成 /bin/touch;ftp 写成 /usr/bin/ftp; 或者在脚本中增加完整的用户环境变量引用。

‘陆’ 为啥直接编辑/etc/crontab无法生效的问题

脚本可手动执行正常,crontab执行却没达预期结果,可从几个方面考虑,
1.脚本权限

2.路径

3.环境变量
crontab读取环境变量与终端是不同的,一种方式可将相关环境变量设置到.bashrc文件,另一种方式可在脚本中设置相关环境变量

‘柒’ 为什么放在crontab中的任务执行了但是没有效果

1. 新增crontab中的任务
oracle@BI-DB-HIS:/expdata/rpt/scripts$crontab -e
"/var/tmp/aaa002939" 7 lines, 496 characters
0 10 * * * /expdata/rpt/scripts/create_snapshot.sh>/dev/null 2>&1
"/var/tmp/aaa002939" 7 lines, 497 characters
warning: commands will be executed using /usr/bin/sh
2. 到10点中的时候,任务没有执行,手工执行多次,确认没有问题
3. 查看.sh和.sql的权限问题,确认也没有问题
4. google到crontab 是不会根据用户自动搜索环境变量的,man的信息如下:
Users who desire to have their .profile executed must explicitly do so
in the crontab entry or in a script. called by the entry.
5. 在.sh脚本中加入export 环境变量
原始脚本:
oracle@BI-DB-HIS:/expdata/rpt/scripts$more /expdata/rpt/scripts/create_snapshot.sh
sqlplusleiz/mleiz@bidb @/expdata/rpt/scripts/create_snapshot.sql

oracle@BI-DB-HIS:/expdata/rpt/scripts$more /expdata/rpt/scripts/create_snapshot.sql
exec dbms_workload_repository.create_snapshot();
exit;

更新后脚本
oracle@BI-DB-HIS:/expdata/rpt/scripts$vi create_snapshot.sh
"create_snapshot.sh" 1 line, 70 characters
export ORACLE_BASE=/oracle
export ORACLE_HOME=$ORACLE_BASE/proct/10.2/db
export ORACLE_SID=bidb
export PATH=/usr/bin:/etc/:/usr/sbin:/usr/ucb:/usr/local/bin:$ORACLE_HOME/bin:/usr/bin/X11:/sbin:$PATH
export NLS_LANG=american_america.ZHS16GBK

‘捌’ crontab为什么没有执行

应该是在后台执行的吧,屏幕上应该不会显示。你可以看一下邮件或者日志看你的任务是否执行。也可以将结果重定向某个文件(如 ls -l /etc > /home/test),看你的脚本是否执行。

‘玖’ 你好,关于crontab配置shell脚本不执行的问题能帮忙解答下不

先试试直接执行shell脚本,如果ok,那就是因为你没有引入用户的环境变量,在脚本开始加一句 . ~/.profile引入用户环境变量即可。
如果你这个用户直接执行shell都不成功,就是shell本身的问题,和crontab没关系。