মূল কনটেন্টে যান
LibraTool logoLibraTool

বিনামূল্যে Cron এক্সপ্রেশন বিল্ডার

শিডিউল করা কাজের জন্য cron এক্সপ্রেশন তৈরি, যাচাই এবং ব্যাখ্যা করুন। লাইভ সহজ-ভাষার বিবরণ, পরবর্তী-৫-রান প্রিভিউ এবং সাধারণ প্যাটার্ন প্রিসেট।

একবার লোড হলে অফলাইনেও কাজ করে
মিনিট
(0-59)
ঘণ্টা
(0-23)
দিন
(1-31)
মাস
(1-12)
সপ্তাহের দিন
(0-7)

সহজ ভাষায়

৯:০০ AM-এ, সোমবার থেকে শুক্রবার.

সাধারণ প্যাটার্ন

স্ট্যান্ডার্ড Unix cron, GitHub Actions, Kubernetes CronJob এবং বেশিরভাগ শিডিউলিং সিস্টেমের সাথে সামঞ্জস্যপূর্ণ। 'প্রতি'-র জন্য * ব্যবহার করুন, 'প্রতি ৫'-র জন্য */5, রেঞ্জের জন্য 1-5, নির্দিষ্ট মানের জন্য 1,15। @hourly, @daily, @weekly, @monthly, @yearly এবং MON-FRI বা JAN-DEC-এর মতো নাম গ্রহণ করে।

সাধারণ ব্যবহার

  • GitHub Actions ওয়ার্কফ্লোগুলির জন্য Cron তৈরি করুনGitHub Actions নির্ধারিত ওয়ার্কফ্লোগুলির জন্য cron সিন্ট্যাক্স ব্যবহার করে। এখানে আপনার সময়সূচী তৈরি এবং যাচাই করুন।
  • Kubernetes CronJobs এর জন্য Cron তৈরি করুনKubernetes CronJob সম্পদ মান cron সিন্ট্যাক্স ব্যবহার করে। ভিজ্যুয়ালি অভিব্যক্তি তৈরি এবং ব্যাখ্যা করুন।
  • Linux crontab এর জন্য Cron এন্ট্রি তৈরি করুনপ্রথাগত Unix cron (cron, crontab -e) এর জন্য আত্মবিশ্বাসের সাথে প্রকাশনা তৈরি করুন।
  • ডেটাবেস রক্ষণাবেক্ষণ চাকরি সময়সূচী করুনcron প্রকাশনা ব্যবহার করে আত্মবিশ্বাসের সাথে ব্যাকআপ, ভ্যাকুয়াম বা বিশ্লেষণ কাজ সময়সূচী করুন।
  • Cron অভিব্যক্তিগুলি কীভাবে কাজ করে তা শিখুনপ্রতিটি সামঞ্জস্য তাৎক্ষণিক সাধারণ ইংরেজি ব্যাখ্যা এবং পরবর্তী 5 রানের একটি প্রিভিউ দেখায় — cron শেখার সর্বোত্তম উপায়।

কিভাবে কাজ করে

cron এক্সপ্রেশন বিল্ডার পুরোপুরি আপনার ব্রাউজারে lib/cron.ts-এর হাতে লেখা পার্সার দিয়ে চলে — কোনো বাইরের লাইব্রেরি বা সার্ভার কল নেই। এটি এক্সপ্রেশন যাচাই করে, লোকেল-সচেতন দিন ও মাসের নামের জন্য ব্রাউজারের বিল্ট-ইন Intl.DateTimeFormat ও Intl.ListFormat API দিয়ে সহজ ভাষার বিবরণ তৈরি করে, এবং প্রতিটি মিনিট জোর করে না দেখে ফিল্ড বাদ দেওয়ার যুক্তিতে সময়ের সামনে এগিয়ে পরবর্তী নির্ধারিত রানের সময় হিসাব করে।

  1. 1
    এক্সপ্রেশন ফিল্ড ধরে ধরে পার্স হয়
    পার্সার এক্সপ্রেশনকে হোয়াইটস্পেসে বিভক্ত পাঁচটি (বা ছয়টি) ফিল্ডে ভাগ করে এবং প্রতিটিতে কমা, পরিসর (যেমন 1-5), ধাপ নোটেশন (যেমন */15) ও MON বা JAN-এর মতো নামযুক্ত মান টোকেনাইজ করে। @daily-এর মতো @macro পার্সিং শুরুর আগে তাদের পাঁচ-ফিল্ড সমতুল্যে প্রসারিত হয়। অবৈধ মান বা পরিসরের বাইরের সংখ্যা টাইপড ত্রুটি কী হিসেবে আসে, যা স্থানীয় ভাষার বার্তায় রূপান্তরিত হয়।
  2. 2
    মানুষের পড়ার মতো বিবরণ তৈরি
    lib/cron.ts-এর describeCron() কোন ফিল্ড wildcard আর কোনটি নির্দিষ্ট সেট তা দেখে ইংরেজি (বা স্থানীয়) বাক্য তৈরি করে। দিন ও মাসের নাম সক্রিয় লোকেলসহ Intl.DateTimeFormat দিয়ে বের হয়, এবং তালিকার আইটেম Intl.ListFormat দিয়ে জোড়া হয় যাতে সংযোজক ('and' বনাম ',' বনাম লোকেল-নির্দিষ্ট রূপ) ব্যবহারকারীর ভাষার সাথে মেলে।
  3. 3
    ফিল্ড বাদ দিয়ে পরবর্তী রানের সময় হিসাব
    nextRuns() বর্তমান মুহূর্ত থেকে একটি Date অবজেক্টকে সামনে এগিয়ে নেয়, কিন্তু প্রতিটি মিনিট পরীক্ষা না করে যে মাস, দিন বা ঘণ্টা মিলতে পারে না সেগুলো পুরো বাদ দেয়। ফলে Feb 30-এর মতো অসম্ভব সময়সূচি 2.6 মিলিয়ন বার লুপ না করে পাঁচ বছরের সীমা পরীক্ষায় দ্রুত বেরিয়ে যায়।
  4. 4
    URL fragment দিয়ে এক্সপ্রেশন শেয়ার
    আপনার টাইপ করা যেকোনো এক্সপ্রেশন পেজের URL fragment-এ #expr= হিসেবে লেখা হয় (window.history.replaceState দিয়ে 500 ms debounce করে)। fragment কখনো সার্ভারে পাঠানো হয় না; লোডের সময় পেজ সেখান থেকে তথ্য নেয়, তাই URL শেয়ার বা বুকমার্ক করলে কোনো সার্ভার state ছাড়াই হুবহু এক্সপ্রেশন ফিরে আসে।

সম্পর্কিত টুলস

সচরাচর জিজ্ঞাসিত প্রশ্নাবলী