स्क्रिप्ट को हर मिनट और हर 24 घंटे में बंद करने के लिए केंटेब का उपयोग करना [बंद]


316

मुझे एक crontab सिंटैक्स की आवश्यकता है जो /var/www/html/a.phpहर मिनट में एक विशिष्ट PHP स्क्रिप्ट निष्पादित करें । प्रत्येक मिनट पर निष्पादन 00:00 बजे शुरू होना चाहिए। दूसरा कार्य जो 00:00 बजे /var/www/html/reset.php(हर 24 घंटे में एक बार) स्क्रिप्ट को निष्पादित करना होगा ।

जवाबों:


586

हर मिनट:

* * * * * /path/to/php /var/www/html/a.php

हर 24 घंटे (हर आधी रात):

0 0 * * * /path/to/php /var/www/html/reset.php

इस संदर्भ को देखें कि क्रॉस्टैब कैसे काम करता है: http://adminschoice.com/crontab-quick-reference , और क्रोन जॉबक्स बनाने के लिए यह आसान उपकरण: http://www.htmlbasix.com/crontab.shtml


3
प्रिय जन! बहुत बढ़िया जवाब। कैसे हर 30 सेकंड में एक क्रोन चलाने के बारे में? क्या यह ऐसा है? * * * * * / 30 / पथ / से / php /var/www/html/a.php?
flaab

26
दुर्भाग्य से आप क्रोन नौकरियों को हर मिनट की तुलना में अधिक बार नहीं चला सकते हैं। आपको इसके लिए कुछ और उपयोग करना होगा।
Jan Hančič

9
Jan Hančič, आप यह कर सकते हैं। आपको बस यहां बताई गई एक सरल ट्रिक का उपयोग करने की आवश्यकता है: stackoverflow.com/a/1034304/1580615
Ruben

क्या क्रोन के साथ प्रत्येक मिनट में .php स्क्रिप्ट को निष्पादित करना सामान्य अभ्यास है? क्या यह सर्वर उत्पादकता को कम कर सकता है? क्या कोई अन्य दुष्प्रभाव है?
एंड्रयू

हर 30 सेकंड के लिए @flaab आप कुछ इस तरह की कोशिश कर सकते हैं: - * * * * * कर्ल - यूआरएल यूआरएल> / देव / अशक्त 2> और 1 * * * * * नींद 30; कर्ल --silent URL> / dev / null 2> & 1
शशांक शाह

375

यह / etc / crontab का प्रारूप है:

# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed

मैं आपको अपने crontab फ़ाइल के शीर्ष पर कॉपी और पेस्ट करने की सलाह देता हूं ताकि आपके पास हमेशा संदर्भ काम हो। RedHat सिस्टम डिफ़ॉल्ट रूप से सेटअप होता है।

हर मिनट में कुछ चलाने के लिए:

* * * * * username /var/www/html/a.php

हर दिन की आधी रात में कुछ चलाने के लिए:

0 0 * * * username /var/www/html/reset.php

आप चलाने के लिए कमांड में usr / usr / bin / php शामिल कर सकते हैं, या आप php स्क्रिप्ट को सीधे निष्पादन योग्य बना सकते हैं:

chmod +x file.php

अपनी php फाइल को एक शेलबैंग से शुरू करें ताकि आपके शेल को पता चले कि कौन से दुभाषिया का उपयोग करना है:

#!/usr/bin/php
<?php
// your code here

42
इसका प्रारूप है /etc/crontab, जो कि सिस्टम क्रॉस्टैब फाइल है। एक उपयोगकर्ता के बाद से यह उपयोगकर्ता के लिए जो यह प्रस्तुत के रूप में चलता crontab, एक अलग प्रारूप है, जो उपयोगकर्ता नाम क्षेत्र को शामिल नहीं करता है। यदि आप एक गैर-रूट उपयोगकर्ता के रूप में क्रोन जॉब चलाना चाहते हैं, तो आपको crontabइसे सबमिट करने के लिए कमांड का उपयोग करना चाहिए (और इस बात की चिंता नहीं करनी चाहिए कि क्रॉन्स्टब कहां जमा है)। /etc/crontabजब तक आपको वास्तव में ज़रूरत न हो, तब तक गड़बड़ न करें।
कीथ थॉम्पसन

उम्म ... नहीं, अभी भी काम नहीं कर रहा है
मेडो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.