【django】使用django-crontab執行django自定義指令

django-crontab 部署

需求:再指定的時間內輸入django的自定義指令,來進行一些需求的操作。
使用流程:
1.安裝:
pip install django-crontab
2.配置 settings.py文件:
再settings.py 文件中添加 django-crontab:

INSTALLED_APPS = (...'django_crontab',
)

3.配置django-crontab:
再settings.py中添加一下命令:

CRONJOBS = [# 定時函數每分鐘執行一次('*/1 * * * *', '你的app名.定時函數所在的py文件名.定時函數名'),# 將定時函數執行結果輸出到指定文件(如果該路徑或文件不存在將會自動創建)('*/1 * * * *', '你的app名.定時函數所在的py文件名.定時函數名', '>> 輸出文件路徑和名稱')
]

如果要再指定的時間內輸入django自定義的指令,其實還可以定時函數:

CRONJOBS = (# 每天早上6點執行命令('0 6 * * *', 'django.core.management.call_command', ['要執行的命令']),
)

注意:要執行的命令,直接輸入你django項目中自定義的指令就好,不需要添加python manage.py xxxxx(自定義指令)

操作命令:
查看系統中已有的定時任務:

python manage.py crontab show

添加和修改定時任務:

python manage.py crontab add

刪除定時任務:

python manage.py crontab remove

注意事項:
1:該django-crontab : 不能再win系統上操作。
2:如果再操作命令的時候報錯:
RuntimeError: No job with hash 18a9888406b9f5486e6b7ea52ee68dbf found. It seems the crontab is out of sync with your settings.CRONJOBS. Run “python manage.py crontab add” again to resolve this issue!

解決方案:意思就是修改過了,可以再執行一次命令就好:

python manage.py crontab add

3:django-crontab 必須再linux的crontab開啟的情況下才可以使用。
4:如果你測試有沒有跑通的時候,輸入的只是一個print()語句的話,那么你將看不到任何內容。
可以再/var/spool/mail/root中查看你的輸入語句:
一般這種情況mail的內容就只是一些正常的系統信息或者是比較重要的錯誤報告。如果你安裝了mutt的話直接用這個命令就可以查看mail的內容(用root登陸先),沒有裝的話用cat /var/spool/mail/root查看(用root登陸先)。
crontab的運行時間舉例:
crontab范例 :

每五分鐘執行    */5 * * * *每小時執行      0 * * * *每天執行        0 0 * * *每周執行        0 0 * * 0每月執行        0 0 1 * *

crontab 常用命令:
crontab -e 編輯定時任務
crontab -l 查看定時任務

還可以使用shell腳本來實現定時執行自定義指令:

寫一個shell腳本來自動運行:

創建一個shell腳本:

#!/bin/bash/usr/bin/python /xxx/xxx/xxx/manage.py sss
xxx:manage.py 所在的目錄下的絕對路徑
切換到manange.py 所在的目錄 pwd:查看當前的路徑。
sss:代表你django中自定義的指令
輸入命令:crontab -e 編輯定時任務:

輸入

0 16 * * * /xxx/xxx/xxx/lhq.sh > /xxxx/xxxx/xxxx/log.log 2>&1
1
0 16 * * *代表的是,每天的16點進行一次操作

把lhq.sh 剛才創建的shell腳本放到跟manage.py同級目錄下:

xxx代表的是:絕對路徑

lhq.sh 后面的 > /xxxx/xxxx/xxxx/log.log 2>&1 導入log日志 xxxx 代表的是導入log日志的絕對路徑。

注意:

可能此刻crontab沒有跑起來, 去查看log 日志會提示你Permission denied

解決方案:chmod 777 lhq.sh 就Ok了。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/455814.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/455814.shtml
英文地址,請注明出處:http://en.pswp.cn/news/455814.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

濾波問題匯總

1。A:JM86里面,GetStrength這個函數中下面這個數組有什么作用呢??byte BLK_NUM[2][4][4] {{{0,4,8,12},{1,5,9,13},{2,6,10,14},{3,7,11,15}},{{0,1,2,3},{4,5,6,7},{8,9,10,11},{12,13,14,15}}} ;blk_y (mb_y<<2) (blkQ >> 2) ;blk_x (mb_x<<2)…

redis基本類型和使用

redis存儲數據的基本類型有&#xff1a;string&#xff08;字符串類型&#xff09;、hash&#xff08;散列類型&#xff09;、list&#xff08;列表類型&#xff09;、set&#xff08;集合類型&#xff09;、zset&#xff08;有序集合類型&#xff09;。 依次做一些練習。redis…

Python與MySQL數據庫連接

Python3 MySQL 數據庫連接 MySQL 可應用于多種語言&#xff0c;包括 PERL, C, C, JAVA 和 PHP 什么是 PyMySQL&#xff1f; PyMySQL 是在 Python3.x 版本中用于連接 MySQL 服務器的一個庫&#xff0c;Python2中則使用mysqldb。 PyMySQL 遵循 Python 數據庫 API v2.0 規范&a…

mysql 日志_MySQL日志系統

MySQL日志系統MySQL有兩個重要的日志系統&#xff0c;分別是 redo log (重做日志) 和 bin log (歸檔日志) 。這兩種日志有以下三點不同。redo log 是 InnoDB 引擎特有的&#xff1b;binlog 是 MySQL 的 Server 層實現的&#xff0c;所有引擎都可以使用。redo log 是物理日志&am…

盛大游戲杯第十五屆上海大學程序設計聯賽暨上海金馬五校賽

編程1小時&#xff0c;提交4小時 做這種比賽一定要選一個好OJ啊 黑白圖像直方圖 發布時間: 2017年7月8日 21:00 最后更新: 2017年7月8日 22:38 時間限制: 1000ms 內存限制: 128M 描述 在一個矩形的灰度圖像上&#xff0c;每個像素點或者是黑色的或者是白色的。黑色像素點…

對幾個重要問題的闡述

由于DPB中間的參考幀的MV都是以4X4塊為單位&#xff0c;現在以8X8塊作Direct mode模式&#xff0c;所以必須對子塊的MV作合并&#xff0c; JM采用的東西是如下圖的方式: x o | o x o o | o o - - - - - o o | o o x o | o x 每8X8塊取外角上的4X4塊的MV. 算法如下: <<<…

【MySQL】基于Docker的Mysql主從復制搭建

基于Docker的Mysql主從復制搭建 為什么基于Docker搭建&#xff1f; 資源有限 虛擬機搭建對機器配置有要求&#xff0c;并且安裝mysql步驟繁瑣 一臺機器上可以運行多個Docker容器 Docker容器之間相互獨立&#xff0c;有獨立ip&#xff0c;互不沖突 Docker使用步驟簡便&#xf…

Web開發介紹

Web開發介紹 一,認識一個網站 最早的軟件都是運行在大型機上的&#xff0c;軟件使用者通過“啞終端”登陸到大型機上去運行軟件。 后來隨著PC機的興起&#xff0c;軟件開始主要運行在桌面上&#xff0c;而數據庫這樣的軟件運行在服務器端&#xff0c;這種Client/Server模式簡…

python云端系統開發入門_Python云端系統開發入門

第01課 初識Django 課時1Django框架介紹 00 : 14 : 33 開始學習 課時2工程搭建1 00 : 28 : 50 開始學習 課時3工程搭建2 00 : 13 : 22 開始學習 第02課 請求和響應的處理 課時1獲取請求url的參數 00 : 07 : 57 開始學習 課時2獲取請求url的查詢字符串 00 : 12 : 01 開始學習 課…

IBM 安全部門 CTO:AI 必須被重新定義為“增強智能”

編者按&#xff1a;隨著人工智能的發展&#xff0c;人們對它逐漸有誤會、恐懼之心。如果能夠利用好人工智能&#xff0c;特別是在網絡安全領域&#xff0c;它將成為人類對抗網絡犯罪強有力的武器。IBM 安全部門的 CTO Sandy Bird 認為現在的人工智能應該被重新定義為“增強智能…

【Nginx】通過反向代理配置本地圖床功能

安裝nginx sudo apt-get install nginx配置nginx.conf sudo vim /etc/nginx/nginx.conf worker_processes auto; pid /run/nginx.pid;events {worker_connections 768;# multi_accept on; }http {sendfile on;tcp_nopush on;tcp_nodelay on;keepalive_timeout 65;types_hash…

構建之法第二章

單元測試&#xff1a;一個開發人員要面對測試一個單元時只給出單元的代碼而沒有規格說明這樣吃力不討好的任務.你怎樣做才會有更多的收獲,而不僅僅是發現編譯器的Bug?第一步是理解這個單元原本要做什么, --- 不是它實際上做了什么. 比較有效的方法是倒推出一個概要的規格說明.…

幀內預測模式提取

if (input->rdopt) { int mb_available_up; int mb_available_left; int mb_available_up_left; min_rdcost max_rdcost; // precompute all new chroma intra prediction modes // 對色度進行幀內預測 IntraChromaPredict…

Django簡介以及安裝

Django簡介 1. 認識Django Django是一個高級的Python Web框架&#xff0c;它鼓勵快速開發和清潔&#xff0c;務實的設計。由經驗豐富的開發人員構建&#xff0c;它負責Web開發的許多麻煩&#xff0c;因此您可以專注于編寫應用程序&#xff0c;而無需重新創建輪子。它是免費的…

python基礎筆試面試題_python基礎面試常見題

Python是目前市面上&#xff0c;我個人認為是最簡潔、最優雅、最有前途、最全能的編程語言&#xff0c;沒有之一。 2、通過什么途徑學習的Python&#xff1f; 通過自學&#xff0c;包括網上查看一些視頻&#xff0c;購買一些相關專業的書籍。 3、Python和Java、PHP、C、C#、C等…

django-rest-swagger顯示接口備注內容

Swagger是一個API開發者的工具框架&#xff0c;用於生成、描述、調用和可視化RESTful風格的Web服務。總體目標是使客戶端和文件系統服務器以同樣的速度來更新&#xff0c;方法&#xff0c;參數和模型緊密集成到服務器端的代碼中&#xff0c;允許API始終保持同步。 在使用 djan…

安全和連接是IoT聯網設備2大挑戰

IoT正在推動500億個聯網設備在未來10年內從工業、零售、智能照明、智慧城市、汽車、農業、可穿戴設備、智能建筑、醫療市場涌現出來&#xff0c;ARM處理器部門市場營銷總監Ian Smythe表示&#xff1a;“到2020年&#xff0c;消費電子和健康、智慧城市和物流、汽車和運輸領域的I…

windows下部署免費ssl證書(letsencrypt)

隨著網絡的發展&#xff0c;網絡安全也越來越重要&#xff0c;對于網站來說&#xff0c;從Http升級到https也是我們要做的首要事情。要實現https&#xff0c;首先我們需要申請一張SSL證書&#xff0c;這篇文章我主要介紹下邊這幾個方面&#xff1a; 1. SSL簡單介紹 2. 免費Lete…

Django之URLconf路由

URLconf路由 一個干凈優雅的URL方案是高質量Web應用程序中的一個重要細節。 Django可以讓你設計URL&#xff0c;無論你想要什么&#xff0c;沒有框架限制。 要為應用程序設計URL&#xff0c;您可以非正式地創建一個名為URLconf&#xff08;URL配置&#xff09;的Python模塊。…

python中什么是關鍵字參數_如何使用python語言中函數的關鍵字參數的用法

一般情況下&#xff0c;在調用函數時&#xff0c;使用的是位置參數&#xff0c;即是按照參數的位置來傳值&#xff1b;關鍵字參數是按照定義函數傳入的參數名稱來傳值的。那么&#xff0c;關鍵字參數怎么使用&#xff1f;工具/原料 python pycharm 截圖工具 WPS 方法/步驟 1 打…