`

crontab 定时sqlplus 出错

阅读更多

今天打算用linux去定时select自己每天上班都要查的数据。但对于linux的定时任务一无所知,so,从零学起:


Linux里面使用crontab命令来执行定时任务。


1,查看当前有哪些定时任务

crontab -l


2,编写新的定时任务。在这里编辑任务的操作模式和 vi 一样。

crontab -e,

3,保存定时的结果

  例1:每天5:30执行ls命令,并把结果输出到/jp/test文件中

  30 5 * * * ls >/jp/test 2>&1

  注:2>&1 表示执行结果及错误信息。

计划任务的格式共分为六段,前五段为时间设定段,第六段为所要执行的命令段,
格式如下:mi hh dd mm dw command

解释:

 

    mi     每小时的第几分钟执行该任务 ,取值范围 0~59

  hh     每天的第几个小时执行该任务 ,取值范围 0~23

  dd     每月的第几天执行该任务 ,取值范围 1~31

  mm     每年的第几个月执行该任务 ,取值范围 1~12

  dw     每周的第几天执行该任务 ,取值范围 0~6,0表示周日

  command   指定要执行的程序

 

举例如下:

  5      *       *        *      *     ls       指定每小时的第5分钟执行一次ls命令

  30     5     *        *      *     ls       指定每天的 5:30 执行ls命令

  30     7     8       *      *     ls       指定每月8号的7:30分执行ls命令

  30     5     8       6     *     ls       指定每年的6月8日5:30执行ls命令

  30     6     *        *     0     ls       指定每星期日的6:30执行ls命令 [ 注:0表示星期天,1表示星期1,以此类推,也可以用英文来表示,sun表示星期天,mon表示星期一等。 ]

  30     3       10,20     *      *     ls       每月10号及20号的3:30执行ls命令 [注:“,”用来连接多个不连续的时段 ]

  25     8-11     *          *      *     ls       每天8-11点的第25分钟执行ls命令 [注:“-”用来连接连续的时段 ]

  */15       *       *          *      *     ls       每15分钟执行一次ls命令 [即每个小时的第0 15 30 45 60分钟执行ls命令 ]

  30      6      */10         *      *     ls       每个月中,每隔10天6:30执行一次ls命令[即每月的1、11、21、31日是的6:30执行一次ls命令。 ]


简单的了解了crontab的用法后,开始建立第一个定时任务,脚本如下:

cd /home/oracle

. .bash_profile

sqlplus userid/password@TNS_NAME <<!

select * from tab;

exit;

!


结果报错:

1, .bash_profile: file not found

2, sqlplus :command not found

第一个错误的解决方法是:使用source /home/oracle/.bash_profile,既然你找不到,我就给你个绝对路径。

第二个错误的解决方式和第一个类似,也是使用绝对路径,但还是想不通。既然已经成功source 环境变量了,系统就应该可以成功找到sqlplus的路径了的。

修改后的脚本是

#!/bin/bash


cd /home/oracle

source /home/oracle/.bash_profile

/home/oracle/oracle/product/11.2.0/client/bin/sqlplus userid/password@TNS_NAME <<!

select * from tab;

exit;

!

 

总结:在脚本里面使用命令最好把命令的绝对路径加上


 

分享到:
评论

相关推荐

    易语言 Crontab 定时任务执行模块 v1.2 支持单位秒 也可做计时器源码

    这个易语言 Crontab 定时任务执行模块 v1.2 则是将这种功能移植到了易语言环境中,让开发者能够方便地在易语言程序中实现定时任务的功能。 该模块特别之处在于支持秒级别的精度,这意味着你可以设置更为精确的定时...

    rsync+crontab定时同步.md

    Linux目录数据定时备份

    Linux Crontab 定时任务 命令详解

    Linux Crontab 定时任务 命令详解 Linux Crontab 是一个强大的定时任务命令,用于在指定的时间间隔执行特定的命令或程序。Crontab 命令的功能是在一定的时间间隔调度一些命令的执行,通过编写 Crontab 文件来实现。...

    qazoknplm#awesome-learning#6.crontab定时任务1

    Linux crontab定时任务crond服务管理crontab 定时任务设置crontab [选项]选项-e 编辑crontab定时任务-l 查询cront

    结合crontab实现数据库定时备份

    ### 结合crontab实现数据库定时备份 在IT运维领域,数据备份是一项极其重要的工作,它能够确保在系统出现故障时快速恢复数据,减少损失。本文将详细介绍如何使用`crontab`工具来实现MySQL数据库的定时备份。 #### ...

    Ubuntu-使用crontab定时任务

    ### Ubuntu 使用 Crontab 定时任务 Crontab 是 Linux 系统中一个非常重要的工具,用于在固定时间执行指定的任务。对于 Ubuntu 用户来说,掌握 crontab 的使用方法可以大大提高系统的自动化管理水平。 #### 一、...

    crontab定时任务不执行的一些原因总结

    最近在工作中遇到了一些问题,crontab定时任务居然不执行,后来我在网上找的时候发现网上主要说了这5个原因: 1 crond服务未启动 crontab不是Linux内核的功能,而是依赖一个crond服务,这个服务可以启动当然也可以...

    crontab 定时执行文件详解

    ### Crontab定时执行工具详解 #### 一、Crontab简介 `cron`是Linux系统中一个重要的后台服务程序,用于实现定时任务的自动化执行。通过`cron`,用户可以方便地设置周期性的任务,比如定时备份数据、清理日志文件等...

    Ubuntu crontab 定时执行php脚本文件

    - **编辑Crontab文件**:通过命令`crontab -e`编辑Crontab文件,并添加定时任务。例如: ``` * 19 * * * /usr/bin/php /path/to/crontab.php ``` - **设置文件执行权限**:确保`crontab.php`文件具有执行权限。...

    基于crontab定时任务的新浪微博新闻更新实时提醒.zip

    基于crontab定时任务的新浪微博新闻更新实时提醒

    linux crontab 定时任务脚本

    NULL 博文链接:https://caoyaojun1988-163-com.iteye.com/blog/1698192

    linux采用crontab定时跑任务.docx

    【Linux的Crontab定时任务】 Crontab是Linux系统中的一个强大工具,用于设置周期性的任务调度。它依赖于名为`crond`的守护进程,该进程在系统启动时自动启动,每分钟检查是否有待执行的任务。Crontab的任务调度分为...

    7天数据库备份sh脚本,crontab定时任务需自行定义

    7天数据库备份sh脚本,crontab定时任务需自行定义

    linux crontab定时触发命令.docx

    【Linux crontab定时触发命令详解】 Linux系统中的crontab命令是一个强大的定时任务调度工具,用于设置周期性被执行的任务。通过crontab,我们可以设定特定时间执行指定的命令或者脚本,以实现自动化维护和管理。...

    给debian的docker容器添加crontab定时任务

    主要介绍了给debian的docker容器添加crontab定时任务的相关知识,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下

    django-crontab 定时执行任务方法的实现

    而django-crontab是基于Django框架的一个扩展,它允许开发者在Django项目中实现定时执行任务的需求。通过使用django-crontab,可以在Django项目中轻松创建和管理cron作业,而无需直接操作Linux系统下的crontab文件。...

    linuxcrontab定时触发命令.pdf

    Linux下的crontab命令是一个非常重要的工具,用于设置周期性的任务调度,比如定时执行脚本、备份文件等。本文将详细介绍如何使用crontab来定时触发命令,以及相关的配置和注意事项。 首先,为了实现定时备份MySQL...

    crontab定时任务服务详解.docx

    ### Crontab定时任务服务详解 #### 一、Crontab简介 Crontab是Linux系统中的一个重要的工具,用于管理周期性执行的任务。通过Crontab,用户可以轻松地安排脚本或命令在特定时间自动执行,无需手动干预。 #### 二...

    crontab定时开启任务&hadoop案例(模拟生成新能源车辆数据)总结

    crontab定时开启任务&hadoop案例(模拟生成新能源车辆数据)总结

Global site tag (gtag.js) - Google Analytics