কিভাবে লিনাক্সে প্রতি 10, 20, এবং 30 সেকেন্ডে একটি ক্রোন জব চালানো যায়


সংক্ষিপ্ত: ক্রন জব সিডিউলার সেকেন্ডের ব্যবধানে চালানোর জন্য কাজগুলি নির্ধারণ করা সমর্থন করে না। এই নিবন্ধে, আমরা লিনাক্সে প্রতি 30 সেকেন্ড বা x সেকেন্ডে একটি ক্রোন কাজ চালাতে সাহায্য করার জন্য আপনাকে একটি সহজ কৌশল দেখাব।

আপনি কি ক্রোন কাজের সময়সূচীতে নতুন এবং প্রতি 30 সেকেন্ডে একটি কাজ চালাতে চান? দুর্ভাগ্যক্রমে, ক্রোন এটির অনুমতি দেয় না। আপনি প্রতি x সেকেন্ডে চালানোর জন্য একটি ক্রন কাজ নির্ধারণ করতে পারবেন না। ক্রোন শুধুমাত্র কমপক্ষে 60 সেকেন্ডের (অর্থাৎ 1 মিনিট) সময়ের ব্যবধান সমর্থন করে। প্রতি 30 সেকেন্ডে একটি ক্রন কাজ চালানোর জন্য, আপনাকে আমরা নীচে ব্যাখ্যা করা কৌশলটি নিয়োগ করতে হবে।

এই নির্দেশিকায়, আমরা প্রতি x সেকেন্ডে একটি কাজ বা কমান্ড বা স্ক্রিপ্ট চালানোর জন্য আরও অনেক উদাহরণ কভার করব। তবে আসুন লিনাক্সে প্রতি 30 সেকেন্ডে কীভাবে একটি ক্রন কাজ চালানো যায় তা কভার করে শুরু করি।

লিনাক্সে প্রতি 30 সেকেন্ডে ক্রন জব চালান

উপরের টাস্কটি অর্জন করতে, ক্রনট্যাবে দুটি এন্ট্রি তৈরি করুন। প্রথম কাজটি প্রতি মিনিটের (60 সেকেন্ড) পরে তারিখ কমান্ড চালাবে, তারপর দ্বিতীয় এন্ট্রি একটি নির্দিষ্ট সময়ের জন্য বিলম্ব করার জন্য স্লিপ কমান্ড ব্যবহার করে (এই ক্ষেত্রে 30 সেকেন্ড) এবং তারিখ কমান্ডটি আবার চালু করবে।

আপনাকে crontab (cron টেবিল) এ নিম্নলিখিত এন্ট্রি যোগ করতে হবে এবং নিম্নলিখিত crontab কমান্ড ব্যবহার করে সম্পাদনার জন্য এটি খুলতে হবে (-e পতাকা সম্পাদনা সক্ষম করে):

# crontab -e

ফাইলে নিম্নলিখিত ক্রোন এন্ট্রি যোগ করুন।

* * * * * date>> /tmp/date.log
* * * * * sleep 30; date>> /tmp/date.log 

এখন আপনি যদি /tmp/date.log ফাইলের বিষয়বস্তু পরীক্ষা করেন, আপনি দেখতে পাবেন যে date কমান্ডটি প্রতি 30 সেকেন্ডে চালানো হচ্ছে। আমরা ফাইল দেখতে cat কমান্ড ব্যবহার করতে পারি এবং নিশ্চিত করতে সময় কলাম চেক করতে পারি, নিম্নরূপ:

$ cat /tmp/date.log

আপনি ফাইলটি রিয়েল-টাইমে আপডেট হতেও দেখতে পারেন। এটি করতে, -f পতাকা সহ tail কমান্ডটি ব্যবহার করুন।

$ tail -f /tmp/date.log

লিনাক্সে প্রতি 10 সেকেন্ডে ক্রন জব চালান

আসুন আরও উদাহরণ দেখি। এটি দেখায় কিভাবে প্রতি 10 সেকেন্ডে একটি ক্রন কাজ চালাতে হয়। কৌশলটি হল কেবল সেকেন্ডের স্লিপ কমান্ডের সংখ্যা দিয়ে খেলা করা:

* * * * * date>> /tmp/date.log
* * * * * sleep 10; date>> /tmp/date.log
* * * * * sleep 20; date>> /tmp/date.log
* * * * * sleep 30; date>> /tmp/date.log
* * * * * sleep 40; date>> /tmp/date.log
* * * * * sleep 50; date>> /tmp/date.log

আবার যদি আমরা /tmp/date.log ফাইলটি দেখি, উপরের ক্রন্টাব এন্ট্রিগুলির উপর ভিত্তি করে এটি প্রতি 10 সেকেন্ডে আপডেট করা উচিত:

$ tail -f  /tmp/date.log

এখানে প্রতি 15 সেকেন্ডের পরে তারিখ কমান্ড কার্যকর করার আরেকটি উদাহরণ রয়েছে:

* * * * * date>> /tmp/date.log
* * * * * sleep 15; date>> /tmp/date.log
* * * * * sleep 30; date>> /tmp/date.log
* * * * * sleep 45; date>> /tmp/date.log

অবশেষে, প্রতি 20 সেকেন্ডে একটি ক্রন কাজ চালানোর জন্য, আপনার কাছে এরকম কিছু থাকতে পারে:

* * * * * date>> /tmp/date.log
* * * * * sleep 20; date>> /tmp/date.log
* * * * * sleep 40; date>> /tmp/date.log

এছাড়াও, ক্রোন ব্যবহার করে কাজের সময়সূচী শেখার জন্য এখানে আরও নিবন্ধ রয়েছে:

  • লিনাক্সে কিভাবে ক্রোন জবস তৈরি ও পরিচালনা করবেন
  • ক্রোন বনাম অ্যানাক্রন: কীভাবে লিনাক্সে অ্যানাক্রন ব্যবহার করে চাকরির সময়সূচী করবেন

এখন আপনি এটা জানেন! লিনাক্সে প্রতি x সেকেন্ডে একটি ক্রন কাজ চালানোর জন্য আমরা আপনাকে বিভিন্ন উদাহরণ দেখিয়েছি। আরও তথ্যের জন্য ক্রোন ম্যান পৃষ্ঠাগুলি পড়ুন (ম্যান ক্রন এবং ম্যান ক্রনট্যাব কমান্ডগুলি চালিয়ে)।

যদি আপনি কোন দরকারী ক্রোন কমান্ড টিপস বা কৌশল জানেন, দয়া করে নীচের মন্তব্যে সেগুলি ভাগ করুন৷