Ubuntu定時執行任務(定時爬取資料)

2022-06-06 11:27:06 字數 2006 閱讀 4294

cron是乙個linux下的後台程序,用來定期的執行一些任務。因為我用的是ubuntu,所以這篇文章中的所有命令也只能保證在ubuntu下有效。

1:編輯crontab檔案,用來存放你要執行的命令

sudo crontab -e

3:新增執行命令

0 7 * * * /usr/bin/python /root/world.py

這句話的意思就是每天早上七點都會自動執行這個指令碼!

4:重啟cron來應用這個計畫任務

sudo service cron restart

1:crontab檔案的基本格式如下所示

* * * * * command

分 時 天 月 周 命令

crontab中的每一行代表乙個定期執行的任務,分為6個部分。前5個部分表示何時執行命令,最後乙個部分表示執行的命令。每個部分以空格分隔,除了最後乙個部分(命令)可以在內部使用空格之外,其他部分都不能使用空格。前5個部分分別代表:分鐘,小時,天,月,星期,每個部分的取值範圍如下:

分鐘 0 - 59

小時 0 - 23

天 1 - 31

月 1 - 12

星期 0 - 6 0表示星期天

* (星號) 表示任意值,比如在小時部分填寫 * 代表任意小時(每小時)

,(逗號) 可以允許在乙個部分中填寫多個值,比如在分鐘部分填寫 1,3 表示一分鐘或三分鐘

/(斜線) 一般配合 * 使用,代表每隔多長時間,比如在小時部分填寫 /2 代表每隔兩分鐘。所以 /1 和 * 沒有區別

2:crontab例子

(1)30 20 * * * date >> /home/date.log //每天的20:30將日期資訊追加home目錄下的date.log中

(2)5 20 13,14 * * date >> /home/date.log //每月的13日,14日20:5分將日期資訊最追加home目錄下的date.log中

(3)0,10 10,12 * * * date >> /home/date.log //每天10點至12點之間,隔10分鐘將日期資訊最追加home目錄下的date.log中

(4)/5 * * * date >> /home/date.log //每5分鐘將日期資訊最追加home目錄下的date.log中

3:crontab是unix系統下定期執行任務的觸發器。使用者把要定期執行的任務記錄在這個檔案下面,然後crond定期的去檢查這個定期執行列表,有要執行的工作時便自動執行。

通過man crontab可以檢視到下面的資訊

(1)/etc/crond.allow 表示的是允許使用crontab的使用者列表

(2)/etc/crond.deny 表示的是不允許使用crontab的使用者列表

4: crontab常用的幾個命令格式

crontab -l //顯示使用者的crontab檔案的內容

crontab -e //編輯使用者的crontab檔案的內容

crontab -r //刪除使用者的crontab檔案

例項分析:

更換成unix的換行符

vim world.py

檢視格式

:set ff

發現是dos,我們要將其更換成unix

:set ff=unix

1 建立指令碼檔案world.py,在檔案開頭需要加上下面一行

#!/usr/bin/python

# encoding=utf-8

上面這行的作用是說明使用那個直譯器來執行該檔案,如果不知道python直譯器在哪,可以使用命令which python來檢視

設定編碼格式

2 給該檔案新增可執行的許可權

chmod  +x  test.py

3 新增計畫任務

crontab -e

在檔案中追加一行,* 7 * * * * /usr/bin/python /root/world.py

儲存退出,:wq

4 重啟cron服務

service cron restart

結束

ubuntu定時執行任務

前幾天女神給我發了條訊息,為什麼我每天早上九點都會收到你給我發的天氣資訊的郵件?然後 當然,我是不可能告訴她,我是用crontab來定時執行python指令碼滴!好了,廢話不多說,直接進入正題!cron是乙個linux下的後台程序,用來定期的執行一些任務。因為我用的是ubuntu,所以這篇文章中的所...

Ubuntu定時執行任務 cron

ubuntu系統中可以使用cron來定時的執行一些任務,如資料庫備份。cron簡介 在linux系統中,計畫任務一般都是由cron承擔,cron是linux系統預設自帶的,開機就自動啟動。當cron啟動後,它會讀取它的所有配置檔案 全域性性配置檔案 etc crontab,以及每個使用者的計畫任務配...

定時執行任務

在windows上,使用configuration task scheduler 任務計畫程式 task scheduler library 任務計畫程式庫 create task.或者 control panel scheduled tasks add a scheduled task.在linu...