`
kankan1218
  • 浏览: 277736 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

contab 使用方法 定时运行perl

阅读更多
crontab -e也可以直接编辑时程表来运行。


说明 : crontab 是用来让使用者在固定时间或固定间隔执行程式之用,换句话说,也就是类似使用者的时程表。
-u user 是指设定指定 user 的时程表,这个前提是你必须要有其权限(比如说是 root)才能够指定他人的时程表。如果不使用 -u user 的话,就是表示设定自己的时程表。

  
参数 : -e [UserName]: 执行文字编辑器来设定时程表,内定的文字编辑器是 VI,如果你想用别的文字编辑器,则请先设定 VISUAL 环境变数来指定使用那个文字编辑器(比如说 setenv VISUAL joe)  
 -r [UserName]: 删除目前的时程表  
 -l [UserName]: 列出目前的时程表


-----------------------------------------------------------------------------------------------------------------------------------------------
1.用VI编辑一个文件 cronfile_test(名字随便起),然后在这个文件中输入格式良好的时程表。编辑完成后,保存并退出。

 cronfile_test文件的内容:
* * * * * /usr/bin/perl /kankan/test.pl

test.pl:
open (RW,">>/kankan/log.txt");
print RW "abc\n";
close RW;


在crontab里面最好使用绝对路径
* * * * * /usr/bin/perl /kankan/test.pl
另外你的脚本 test.pl 里面,如果可能也使用绝对路径,或者在脚本的开头 chroot 到当前路径。
 

2。在命令行输入$: crontab cronfile_test ,这样就将cronfile文件提交给cron进程,同时,新创建cronfile的一个副本已经被放在/var/spool/cron目录中,文件名就是用户名。

此时test.pl就将每分钟执行一次,此方法讲解结束。

----------------------------------------------------------------------------------------------------------------
perl程序经常会发生放在crontab里面不能被执行的现象,因为perl所使用的环境变量为系统的环境变量,而crontab在运行时不使用当前系统的环境变量,因此为了解决这个问题有两种方法:
1、在perl程序里面凡是涉及到执行命令或者读写文件的语句,都要在用绝对路径描述该命令或文件.
2、在crontab -e中指命PATH等环境变量
SHELL=/bin/sh                                        
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
HOME=/var/log

再奉送一个超级无敌解决方法:可以写一个shell脚本,脚本内容是执行perl程序,然后把shell程序放在crontab中 #(这个方法真是让人无话可说...... )  



举例:
表示8月27、28两天的晚上7点0、1、2、3分钟开始运行crawler程序。
0 19 27,28 8 * /usr/bin/perl /home/kankan/ShopStyleTest/code/bin/crawler.pl beams_jp


########################################################################################################
c r o n t a b文件每个条目中各个域的意义和格式:
第1列分钟1~5 9
第2列小时1~2 3(0表示子夜)
第3列日1~3 1
第4列月1~1 2
第5列星期0~6(0表示星期天)
第6列要运行的命令


下面是c r o n t a b的格式:
分<>时<>日<>月<>星期<>要运行的命令
其中<>表示空格


这里有c r o n t a b文件条目的一些例子:
30 21 * * * /apps/bin/cleanup.sh
上面的例子表示每晚的21:3 0运行/a p p s/b i n目录下的cleanup.sh。
45 4 1,10,22 * * /apps/bin/backup.sh
上面的例子表示每月1、1 0、2 2日的4 : 4 5运行/ a p p s / b i n目录下的b a c k u p . s h。
10 1 * * 6,0 /bin/find -name "core" -exec rm {} \;
上面的例子表示每周六、周日的1 : 1 0运行一个f i n d命令。
0,30 18-23 * * * /apps/bin/dbcheck.sh
上面的例子表示在每天1 8 : 0 0至2 3 : 0 0之间每隔3 0分钟运行/ a p p s / b i n目录下的d b c h e c k . s h。
0 23 * * 6 /apps/bin/qtrend.sh
上面的例子表示每星期六的11 : 0 0 p m运行/ a p p s / b i n目录下的q t r e n d . s h。
分享到:
评论

相关推荐

    crontab-master

    它允许用户根据自己的需求定制定时任务,如定期备份、清理日志、运行脚本等。在 `crontab` 中,我们通过编写特定格式的配置文件来定义任务的执行时间与命令。这个 `crontab-master` 压缩包可能包含了关于 `crontab` ...

    perl网络批量抓取配置工具

    通过集成crontab定时任务管理器,用户可以设置定期执行抓取任务,确保网络配置的实时更新和备份。 首先,`Net::Telnet`是Perl的一个模块,它提供了与远程设备通过Telnet协议交互的能力。这个库允许程序模拟用户登录...

    定时任务脚本制作

    - **Crontab命令**:通过`crontab -e`命令可以编辑用户的个人定时任务,这些任务将在用户上下文中运行。 2. **Windows下的Task Scheduler** - **配置界面**:Task Scheduler有一个图形化界面,可以直接创建、编辑...

    Java版水果管理系统源码-crontab:windows版crontab

    注册一个系统服务来定时运行计划任务。它们忽略了两个 Windows 用户的重要特性: Windows 不是服务器,经常需要关机,关机后计划任务就无效了,那我定制它还有什么用 Windows 上不像 Linux 那样有很多强大的命令程序...

    远程控制主机的SHELL自动化管理 案例

    编辑`crontab -e`命令打开定时任务配置,然后添加一行如`0 10 * * * /bin/bash /path/to/your/script.sh`,这将在每天的10点0分执行`script.sh`脚本。 结合以上知识,创建一个名为`remote_manage.sh`的SHELL脚本,...

    mysql数据库备份策略

    使用Crontab设置定时任务,如每天凌晨3点执行备份脚本。 3. **备份脚本示例** 提供了一个简单的备份脚本示例,该脚本定义了备份的相关参数和步骤。 #### 五、总结 针对MyISAM表的备份策略选择取决于数据库的...

    unix power tools 3ed.pdf

    - **包管理器**: 如`apt`, `yum`, `brew`等的使用方法。 - **源码编译**: 从源代码构建软件的方法。 - **容器化**: 使用Docker等容器技术部署应用程序。 **7.4 Perl (Chapter 41: Perl)** - **Perl语言**: Perl的...

    MRTG监视网络流量CPU内存硬盘

    - **使用perl命令**:在命令行窗口中,进入`C:\mrtg\bin`目录,运行`perl cfgmaker --global "WorkDir:E:\web" --output E:\web\mrtg.cfg public@localhost`生成配置文件。 - **生成PNG图形**:运行`wperl mrtg E:\...

    研发基础课程基于命令的编程.pptx

    同时,perl也有自己的**异常处理机制**和**内建的定时功能**,使得它在执行周期性任务时也非常有用。 学习一门编程语言,无论是shell、awk还是perl,都有几个良好的习惯需要养成: 1. **预先设计**:在编写代码前...

    PHP实例开发源码—phpwind 神箭手云采集插件.zip

    5. **定时任务调度**:插件可能利用PHP的cron job或第三方服务如CronTab设置定时任务,学习如何实现定时运行的代码很有价值。 6. **错误处理与日志记录**:了解如何处理异常、记录日志,以确保插件在出现问题时能...

    监控分析工具Cacti的安装配置手册(个人亲测使用版)

    可以使用`ntpdate`命令和中国国家授时中心的服务器,或者设置定时任务自动同步。例如: ```bash # 更新当前时间 ntpdate 10.1.1.45 clock -w # 添加定时任务 crontab -e ``` 在`crontab`文件中添加一行,根据实际...

    可悲的:下拉RSS和cron进程

    标题中的“可悲的:下拉RSS和cron进程”似乎是指在使用Perl编程语言处理RSS(Really Simple Syndication) feed并结合cron定时任务时遇到了问题。RSS是一种用于发布和订阅网站内容的XML格式,通常用于新闻聚合或博客...

    MySQL 备份和恢复策略

    例如,要使用 `mysqlhotcopy` 进行备份,首先需要安装 `DBD-mysql` Perl 模块,然后编写一个备份脚本,如 `mysqlbackup.sh`,设置定时任务每天执行。在脚本中,定义数据库的相关路径、用户名、密码以及邮件地址,...

    AIX命令参考大全中文PDF版(上)

    同时,"crontab"用于设置定时任务,确保系统的自动化运行。 此外,标签"源码"和"工具"暗示这份文档可能不仅限于命令使用,还可能涉及到AIX系统的源代码理解和相关工具的使用。AIX系统支持丰富的开源工具和编程语言...

    mysql的备份、恢复策略

    需先安装DBD-mysql Perl模块,然后通过crontab定时执行备份脚本。 3. **使用`mysqldump`**:此工具可实现完全备份及增量备份,适合中型数据库。`mysqldump`会生成SQL脚本,包含创建数据库结构和插入数据的命令。...

    实战:利用MRTG进行网络监控

    MRTG,全称为Multi Router Traffic Grapher,是一款开源的网络流量监控工具,主要用于收集、统计网络设备的接口流量,并生成实时图形展示,帮助网络管理员了解网络的运行状况。本实战指南将详细介绍如何利用MRTG进行...

    MRTG的安装与配置

    可以通过编辑`/etc/crontab`文件添加相应的定时任务。 ```shell # 添加以下行 0 * * * * root /usr/bin/mrtg /etc/mrtg/mrtg.cfg -w /var/www/html/mrtg/6/ ``` 上述命令表示每小时运行一次MRTG,生成最新的...

    mysql的自动备份与恢复(mysqlhotcopy).docx

    - 可以通过编辑crontab文件来设置定时任务,例如每天凌晨1点执行备份任务: ```bash 0 1 * * * /path/to/backup_script.sh ``` #### 五、数据恢复 一旦数据出现问题,例如误删了某个重要的数据库,我们可以...

Global site tag (gtag.js) - Google Analytics