Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
jmrozanec__cron-utils_CVE-2021-41269_9-1-5 — क्रोन एक्सप्रेशन को पार्स करने, मान्य करने, माइग्रेट करने और वर्णन करने के लिए जावा लाइब्रेरी, जो कई फॉर्मेट (Unix, Quartz, Spring) और मानव-पठनीय लोकेल-विशिष्ट आउटपुट का समर्थन करती है। | Kitploit
उपकरण/GitHubGitHub/shoucheng3/jmrozanec__cron-utils_cve-2021-41269_9-1-5
सामान्य उपयोगिताएँस्क्रिप्टिंग और स्वचालनउपयोगिताएँ और फ्रेमवर्कलर्निंग और शिक्षा
GitHubshoucheng3/jmrozanec__cron-utils_cve-2021-41269_9-1-5

jmrozanec__cron-utils_CVE-2021-41269_9-1-5

क्रोन एक्सप्रेशन को पार्स करने, मान्य करने, माइग्रेट करने और वर्णन करने के लिए जावा लाइब्रेरी, जो कई फॉर्मेट (Unix, Quartz, Spring) और मानव-पठनीय लोकेल-विशिष्ट आउटपुट का समर्थन करती है।

रिपॉजिटरी देखें
410 महीने पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

cron-utils

हम crons परिभाषित करते हैं। और उनका समर्थन करते हैं।

cron-utils एक Java लाइब्रेरी है जो crons को परिभाषित करने, पार्स करने, मान्य करने, स्थानांतरित करने और उनके लिए मानव-पठनीय विवरण प्राप्त करने के लिए है। यह परियोजना Semantic Versioning Convention का पालन करती है, OSGi मेटाडेटा प्रदान करती है और Apache 2.0 लाइसेंस का उपयोग करती है।

Gitter Chat Build Status Quality Gate

डाउनलोड

cron-utils Maven central रिपॉजिटरी पर उपलब्ध है।

root@kitploit:~
<dependency>
    <groupId>com.cronutils</groupId>
    <artifactId>cron-utils</artifactId>
    <version>9.2.1</version>
</dependency>

Android डेवलपर्स के लिए, cron-utils 7.0.0 Android 26+ मानता है। पुराने Android संस्करणों के लिए cron-utils 6.0.6 का उपयोग करने पर विचार करें। Java EE से ScheduleExpression का उपयोग करते समय, इसे रनटाइम निर्भरता के रूप में प्रदान किया जाना चाहिए।

वर्तमान विकास

हम वर्तमान में JDK 16 की ओर कोडबेस को अपडेट करने पर काम कर रहे हैं, ताकि यह सुनिश्चित हो सके कि जारी होने पर JDK 17 के साथ पूरी तरह से संगत होगा।

अब हम न्यूरल-ट्रांसलेशन का उपयोग करके cron-descriptors की एक नई पीढ़ी विकसित कर रहे हैं! किसी भी प्रकार का योगदान स्वागत योग्य है: डेटासेट जनरेशन में मदद से लेकर मशीन लर्निंग मॉडल प्रशिक्षण और उन्हें लोड करने के लिए उपयोगिताएँ! यदि रुचि हो, तो कृपया #3 मुद्दे का अनुसरण करें।

विशेषताएँ

  • मनमानी cron अभिव्यक्तियाँ बनाएँ: आप अपना स्वयं का cron प्रारूप परिभाषित कर सकते हैं! समर्थित फ़ील्ड हैं: सेकंड, मिनट, घंटा, महीने का दिन, महीना, सप्ताह का दिन, वर्ष।
  • आप अंतिम फ़ील्ड को वैकल्पिक के रूप में चिह्नित कर सकते हैं!
  • सभी cron विशेष वर्णों का समर्थन करता है: * / , -
    • गैर-मानक वर्ण L, W, LW, '?' और '#' भी समर्थित हैं!
  • cron एक्सटेंशन/उपनामों का समर्थन करता है: @yearly, @annually, @monthly, @weekly, @daily, @midnight, @hourly, @reboot
  • स्थानीय-विशिष्ट मानव-पठनीय प्रारूप में प्रिंट करें (चीनी, अंग्रेजी, जर्मन, ग्रीक, इंडोनेशियाई, जापानी, कोरियाई, पोलिश, रोमानियाई, स्पेनिश, स्वाहिली और तुर्की पूरी तरह से समर्थित हैं। डच, फ्रेंच, इतालवी, पुर्तगाली और रूसी का बुनियादी समर्थन है)।
  • पार्स और विवरण प्रक्रिया अलग-अलग हैं: एक बार पार्स करें और परिणाम के साथ काम करें!
  • CronBuilder का उपयोग करके cron अभिव्यक्तियाँ बनाएँ:
    • प्रत्येक cron प्रदाता के लिए फ़ील्ड और बाधाओं को याद रखने की आवश्यकता नहीं है।
    • cron प्रदाता से अलग हो जाते हैं: किसी भी समय आप किसी अन्य प्रारूप में निर्यात कर सकते हैं।
  • जाँचें कि क्या cron अभिव्यक्तियाँ समतुल्य हैं।
  • एकाधिक cron अभिव्यक्तियों को एक में समाहित करें!
  • सत्यापित करें कि क्या cron स्ट्रिंग अभिव्यक्तियाँ cron परिभाषा से मेल खाती हैं।
  • विभिन्न cron परिभाषाओं के बीच crons को परिवर्तित करें: यदि आपको अभिव्यक्तियाँ स्थानांतरित करने की आवश्यकता है, तो CronMapper आपकी मदद कर सकता है!
  • निम्नलिखित cron लाइब्रेरीज़ के लिए पूर्व-परिभाषित परिभाषाएँ प्रदान की गई हैं:
    • Unix
    • Cron4j
    • Quartz
    • Spring. हम दो परिभाषाओं का समर्थन करते हैं: v5.3 से पहले और v5.3 से आगे।
  • अंतिम/अगला निष्पादन समय प्राप्त करें, साथ ही अंतिम निष्पादन से समय/अगले निष्पादन तक का समय प्राप्त करें।
  • दो दिनों के बीच निष्पादनों की संख्या की गणना करें, और उनकी निष्पादन आवृत्तियों के आधार पर crons की तुलना करें।
  • दो तिथियों के बीच कार्यदिवसों की गणना करें, विभिन्न सप्ताहांत नीतियों और छुट्टियों पर विचार करते हुए।
  • विभिन्न cron/समय लाइब्रेरीज़ के बीच स्थिरांक मैप करने की आवश्यकता है? ConstantsMapper का उपयोग करें।

उपयोग उदाहरण

नीचे हम कुछ उदाहरण प्रस्तुत करते हैं। आप इन्हें और अन्य को हमारे द्वारा बनाए गए एक नमूना रिपो में पा सकते हैं जो cron-utils लाइब्रेरीज़ को प्रदर्शित करता है!

cron परिभाषाएँ बनाएँ

root@kitploit:~
// अपना स्वयं का cron परिभाषित करें: मनमानी फ़ील्ड की अनुमति है और अंतिम फ़ील्ड वैकल्पिक हो सकता है
CronDefinition cronDefinition =
    CronDefinitionBuilder.defineCron()
        .withSeconds().and()
        .withMinutes().and()
        .withHours().and()
        .withDayOfMonth()
            .supportsHash().supportsL().supportsW().and()
        .withMonth().and()
        .withDayOfWeek()
            .withIntMapping(7, 0) //हम गैर-मानक गैर-शून्य-आधारित संख्याओं का समर्थन करते हैं!
            .supportsHash().supportsL().supportsW().and()
        .withYear().optional().and()
        .instance();

// या एक पूर्व-परिभाषित उदाहरण प्राप्त करें
cronDefinition = CronDefinitionBuilder.instanceDefinitionFor(QUARTZ);

एक cron अभिव्यक्ति बनाएँ

root@kitploit:~
// एक cron अभिव्यक्ति बनाएँ। CronMigrator यह सुनिश्चित करेगा कि आप cron प्रदाता-अज्ञेय बने रहें
import static com.cronutils.model.field.expression.FieldExpressionFactory.*;

Cron cron = CronBuilder.cron(CronDefinitionBuilder.instanceDefinitionFor(CronType.QUARTZ))
    .withYear(always())
    .withDoM(between(SpecialChar.L, 3))
    .withMonth(always())
    .withDoW(questionMark())
    .withHour(always())
    .withMinute(always())
    .withSecond(on(0))
    .instance();
// स्ट्रिंग अभिव्यक्ति प्राप्त करें
String cronAsString = cron.asString(); // 0 * * L-3 * ? *

पार्स करें

root@kitploit:~
// प्रदान की गई परिभाषा के आधार पर एक पार्सर बनाएँ
CronParser parser = new CronParser(cronDefinition);
Cron quartzCron = parser.parse("0 23 * ? * 1-5 *");

... यहाँ तक कि मल्टी-क्रॉन अभिव्यक्तियाँ भी! कई crons को एक पंक्ति में समेटने के बारे में क्या ख्याल है? 0 0 9 * * ? *, 0 0 10 * * ? *, 0 30 11 * * ? * और 0 0 12 * * ? * लिखने के बजाय हम इसे 0 0|0|30|0 9|10|11|12 * * ? * में लपेट सकते हैं

वर्णन करें

root@kitploit:~
// किसी विशिष्ट Locale के लिए एक डिस्क्रिप्टर बनाएँ
CronDescriptor descriptor = CronDescriptor.instance(Locale.UK);

// कुछ अभिव्यक्ति पार्स करें और डिस्क्रिप्टर से विवरण पूछें
String description = descriptor.describe(parser.parse("*/45 * * * * ?"));
// विवरण होगा: "हर 45 सेकंड"

description = descriptor.describe(quartzCron);
// विवरण होगा: "प्रति घंटा मिनट 23 पर, सोमवार और शुक्रवार के बीच हर दिन"
// जो नीचे दिए गए cron के लिए समान विवरण है:
descriptor.describe(parser.parse("0 23 * ? * MON-FRI *"));

स्थानांतरित करें

root@kitploit:~
// क्रॉन लाइब्रेरीज़ के बीच स्थानांतरण इतना आसान कभी नहीं रहा!
// CronMapper का उपयोग करके cron अभिव्यक्तियों को दूसरे प्रारूप में बदलें:
CronMapper cronMapper = CronMapper.fromQuartzToCron4j();

Cron cron4jCron = cronMapper.map(quartzCron);
// और इसका स्ट्रिंग प्रतिनिधित्व प्राप्त करने के लिए, हम इसका उपयोग कर सकते हैं
cron4jCron.asString(); // वापसी: 23 * * * 1-5

सत्यापित करें

root@kitploit:~
cron4jCron.validate()

निष्पादन से/तक समय की गणना करें

root@kitploit:~
// अंतिम निष्पादन के लिए तिथि प्राप्त करें
ZonedDateTime now = ZonedDateTime.now();
ExecutionTime executionTime = ExecutionTime.forCron(parser.parse("* * * * * ? *"));
ZonedDateTime lastExecution = executionTime.lastExecution(now);

// अगले निष्पादन के लिए तिथि प्राप्त करें
ZonedDateTime nextExecution = executionTime.nextExecution(now);

// अंतिम निष्पादन से समय
Duration timeFromLastExecution = executionTime.timeFromLastExecution(now);

// अगले निष्पादन तक का समय
Duration timeToNextExecution = executionTime.timeToNextExecution(now);

लाइब्रेरीज़ के बीच स्थिरांक मैप करें

root@kitploit:~
// Quartz से JodaTime में सप्ताह के दिन का मान मैप करें
int jodatimeDayOfWeek =
        ConstantsMapper.weekDayMapping(
                ConstantsMapper.QUARTZ_WEEK_DAY,
                ConstantsMapper.JODATIME_WEEK_DAY
        );

मनुष्यों के लिए दिनांक और समय स्वरूपण!

htime का उपयोग करें - Java के लिए मानव-पठनीय दिनांक समय स्वरूपण! हालाँकि यह कार्यक्षमता एक ही jar में बंडल नहीं है, यह एक cron-utils प्रोजेक्ट है जो आपको उपयोगी लग सकता है।

root@kitploit:~
// आपको अब "YYYY-MM-dd KK a" पैटर्न याद रखने की आवश्यकता नहीं है।
DateTimeFormatter formatter = 
	    HDateTimeFormatBuilder
		    .getInstance()
		    .forJodaTime()
		    .getFormatter(Locale.US)
		    .forPattern("June 9, 2011");
String formattedDateTime = formatter.print(lastExecution);
// formattedDateTime "दिन का नाम, माह दिन, वर्ष" प्रारूप में lastExecution होगा

cron-utils CLI

हम एक सरल CLI इंटरफ़ेस प्रदान करते हैं ताकि cron-utils का उपयोग सीधे कंसोल से, बिना कोई नया प्रोजेक्ट लिखे किया जा सके! CLI एक उपग्रह परियोजना है, जो cron-utils-cli पर उपलब्ध है।

  • उपयोग: java -jar cron-utils.jar com.cronutils.cli.CronUtilsCLI --validate -f [CRON4J|QUARTZ|UNIX] -e '<cron expression>'

  • उदाहरण: java -jar cron-utils.jar com.cronutils.cli.CronUtilsCLI --validate -f UNIX -e '* 1 * * *'

यदि आप 'cp' की आवश्यकता के बिना एक स्टैंडअलोन jar चाहते हैं, तो इसके साथ एक uber jar बनाएँ:

root@kitploit:~
mvn assembly:assembly -DdescriptorId=jar-with-dependencies

फिर, cli-utils ('target' निर्देशिका में निर्मित) को इसके साथ लॉन्च करें:

root@kitploit:~
java -jar cron-utils-<version>-jar-with-dependencies.jar com.cronutils.cli.CronUtilsCLI --validate -f [CRON4J|QUARTZ|UNIX] -e '<cron expression>'`

योगदान दें और समर्थन करें!

योगदान स्वागत योग्य हैं! आप निम्नलिखित तरीकों से योगदान कर सकते हैं:

  • इस रिपो को स्टार करें!
  • नई सुविधाओं का अनुरोध करें या जोड़ें। हमारा रोडमैप देखें!
  • मौजूदा कोड को बेहतर बनाएँ: उदा. अधिक सटीक विवरण मामले प्रदान करें
  • परीक्षण
  • दस्तावेज़ीकरण में सुधार
  • नए लोकेल का समर्थन करने के लिए अनुवाद प्रदान करें
  • सुझाव दें और बग रिपोर्ट करें
  • बात फैलाएँ
  • हमें बताएँ कि आप इसका उपयोग कैसे करते हैं! हम अपनी विकी पर आपको सूचीबद्ध करने के लिए तत्पर हैं!

हमारा पेज देखें! परियोजना के आँकड़ों के लिए, आप हमारी OpenHUB प्रोफ़ाइल पर जा सकते हैं।

अन्य cron-utils परियोजनाएँ

आप निम्नलिखित cron-utils परियोजनाओं पर जाने और उपयोग करने के लिए स्वागत हैं:

  • htime: मनुष्यों के लिए तिथि को आसानी से प्रारूपित करने के लिए एक Java लाइब्रेरी। अब आपको दिनांक समय स्वरूपण वर्ण याद रखने की आवश्यकता नहीं है: बस एक उदाहरण लिखें, और आपको उपयुक्त स्वरूपक मिलेगा।
  • cron-utils-spring: Spring फ्रेमवर्क में मानव-पठनीय भाषा में cron अभिव्यक्तियों का वर्णन करने के लिए एक Java लाइब्रेरी, cron-utils का उपयोग करके।
  • cron-utils-cli: CLI के माध्यम से उपलब्ध cron-utils सुविधाएँ।
  • cron-utils-sisyphus: एक Scala शेड्यूलर जो कई cron नोटेशन का समर्थन करता है।
  • cron-utils-scheduler: cron-utils लाइब्रेरी पर आधारित एक Java जॉब शेड्यूलर।
टूल डाउनलोड करें