今天写了个脚本,要写进crontab做定时任务,每5分钟跑一遍。关于crontab的介绍呢,请大家移步www.baidu.com,在这里我就不仔细介绍了。可以搜索一下“每天一个Linux命令”系列文章,介绍的比我要好很多。我这里只是介绍一下最简单的两种写法。

$ sudo vim /etc/crontab

打开crontab,里面的格式是酱婶的:

# m h dom mon dow user  command

简单的说,这几个参数分别是:分钟,小时,日,月,周,用户,命令。比如我的用户是apple,如果我想每天0点执行一个test.py的python脚本,可以这样写:

  * * * apple /usr/bin/python /home/apple/test.py

要注意的是,最后一个command参数中,命令和选项都需要写绝对路径

然后,还有另一种功能,比如说我这个脚本,不是每天同一时间执行的,而是每10分钟要跑一趟,那我总不能写成

 * * * * apple /usr/bin/python /home/apple/test.py
* * * * apple /usr/bin/python /home/apple/test.py
* * * * apple /usr/bin/python /home/apple/test.py
* * * * apple /usr/bin/python /home/apple/test.py
* * * * apple /usr/bin/python /home/apple/test.py
* * * * apple /usr/bin/python /home/apple/test.py

这样的吧。That's too two. too two. 兔兔。

  ←兔兔内心OS:关我屁事!

其实,只要这样写就好了:

*/ * * * * apple /usr/bin/python /home/apple/test.py

其他像crontab -e什么的我也不是很了解,就不说了。

那么,这么简单的东西,问题出在什么地方捏?问题在于我的python脚本。我知道用定时任务的时候,print是没法输出东西的,所以,我特意写了个文件,假装它是一个log。结果定时每5分钟它居然木有执行。检查了好久,还单独找其他机器做实验,都木有效果。检查了好久,连/var/log/syslog中的cron的日志都翻出来了,还是没找到问题。最后,我发现,原来是文件没有写成绝对路径,不知道写到哪里去了。

果然我还是兔兔。

  ←兔兔内心OS:再提我打你喔!

之后,问题就解决了。

。。。。。。

其实呢,还有另一种解决方式:脚本里面根本不需要写个文件输出,直接在crontab的命令中重定向到文件就好了,像这样:

*/ * * * *   apple /usr/bin/python /home/apple/anpeng/test.py > /home/apple/anpeng/aaa.log

  兔兔:。。。

我什么都没说啊!

关于crontab中的一些小问题的更多相关文章

  1. crontab中部署Python脚本注意事项

    有时候手工执行Python脚本跑的好好的,但是部署到Linux的crontab中后,就会遇到一些问题,最近终于有空整理一下这方面的内容,其实也是自己也踩了一些别人踩过的坑!这里仅仅列举个人遇到的一些小 ...

  2. [LeetCode] Kth Smallest Element in a Sorted Matrix 有序矩阵中第K小的元素

    Given a n x n matrix where each of the rows and columns are sorted in ascending order, find the kth ...

  3. 数组中第K小的数字(Google面试题)

    http://ac.jobdu.com/problem.php?pid=1534 题目1534:数组中第K小的数字 时间限制:2 秒 内存限制:128 兆 特殊判题:否 提交:1120 解决:208 ...

  4. 九度OJ 1534 数组中第K小的数字 -- 二分查找

    题目地址:http://ac.jobdu.com/problem.php?pid=1534 题目描述: 给定两个整型数组A和B.我们将A和B中的元素两两相加可以得到数组C. 譬如A为[1,2],B为[ ...

  5. 计算序列中第k小的数

    作者:jostree 转载请注明出处 http://www.cnblogs.com/jostree/p/4046399.html 使用分治算法,首先选择随机选择轴值pivot,并使的序列中比pivot ...

  6. crontab 中 python(cx_Oracle)脚本执行时需要用户环境变量,怎么办??

    import cx_Oracle Traceback (most recent call last): File "", line 1, in ? ImportError: lib ...

  7. 九度OJ 题目1534:数组中第K小的数字(二分解)

    题目链接:点击打开链接 题目描述: 给定两个整型数组A和B.我们将A和B中的元素两两相加可以得到数组C. 譬如A为[1,2],B为[3,4].那么由A和B中的元素两两相加得到的数组C为[4,5,5,6 ...

  8. crontab中使用mysql问题

    第1列分钟1-59第2列小时1-23(0表示子夜)第3列日1-31第4列月1-12第5列星期0-6(0表示星期天)第6列要运行的命令 ,  并列 -  连续 crontab中不能执行mysql,百分之 ...

  9. 笔试题&面试题:找出一个数组中第m小的值并输出

    题目:找出一个数组中第m小的值并输出. 代码: #include <stdio.h> int findm_min(int a[], int n, int m) //n代表数组长度,m代表找 ...

随机推荐

  1. Spring.Net---1、IOC第一个实例

    Spring.NET IoC容器的用法. 通过简单的例子学习Spring.Net 1.先创建一个控制台程序项目. 2.添加IUserInfoDal 接口. namespace Spring.Net { ...

  2. JavaScript中自定义函数以及文本框、radio、下拉框的值的获取,结合淘宝竞拍案例来理解。。。

    淘宝竞拍案例: HTML部分代码: <form action="#" method="post"> <h2>欢迎进入淘宝竞拍</h ...

  3. 撩课-Java每天5道面试题第26天

    161.简述一下springMVC当中的视图解析器 请求处理方法执行完成后,最终返回一个 ModelAndView 对象 对于那些返回 String,View 或 ModeMap 等类型的处理方法 S ...

  4. java web工程web.xml介绍

    转载自:http://blog.csdn.net/believejava/article/details/43229361 Web.xml详解: 1.web.xml加载过程(步骤) 首先简单讲一下,w ...

  5. 后台数据校验-BeanCheck

    package com.ldf.domain; import java.text.ParseException; public class UserCheck { //从表单获取的数据 private ...

  6. JDBC入门(3)--- PrepareStatement

    一.PrepareStatement概述 PrepareStatement是Statement接口的子接口: 1.强大之处: 防SQL攻击: 提高代码的可读性: 提高效率; 2.PrepareStat ...

  7. sql:SQL Server metadata queries

    http://www.mssqltips.com/sqlservertip/3449/making-sql-server-metadata-queries-easier-with-these-new- ...

  8. input textarea监听鼠标粘贴

    发现一个问题,在input/textarea中如果是鼠标粘贴内容进去,发现判断不了value的改变,html代码如下: <!doctype html> <html> <h ...

  9. BZOJ4903: [Ctsc2017]吉夫特

    传送门 可以发现,\(\binom{n}{m}\equiv 1(mod~2)\) 当且仅当 \(m~and~n~=~m\) 即 \(m\) 二进制下为 \(n\) 的子集 那么可以直接写一个 \(3^ ...

  10. Bzoj4044 Virus synthesis

    题意 你要用 \(ATGC\) 四个字母用两种操作拼出给定的串: 将其中一个字符放在已有串开头或者结尾 将已有串复制,然后 \(reverse\) ,再接在已有串的头部或者尾部 一开始已有串为空.求最 ...