উত্তর:
আপনি প্রতি দশ সেকেন্ডে কাজের সময় নির্ধারণ করতে পারবেন না, তবে আমি মনে করি আপনি প্রতি মিনিটে কাজ চালানোর জন্য সময় নির্ধারণ করতে এবং 10 সেকেন্ডের ব্যবধানে একটি লুপে ঘুমাতে পারেন। এটি আপনার কমান্ডটি দশ সেকেন্ডের অন্তর শেষ হওয়ার আগেই সম্পূর্ণ হওয়ার পূর্বে পূর্বাভাস দেওয়া হবে বা পরবর্তী কমান্ডটি চললে আপনি ওভারল্যাপ হয়ে যাবেন। এটি একটি অনিশ্চিত সমাধানের মতো মনে হয় তবে আপনি যদি স্ক্রিপ্টের প্রধান কমান্ডটির খুব অল্প প্রয়োগের গ্যারান্টি দিতে পারেন তবে এটি কার্যকর হবে।
#!/bin/bash
i=0
while [ $i -lt 6 ]; do
/run/your/command &
sleep 10
i=$(( i + 1 ))
done
আমি গত সপ্তাহে একই কাজ ছিল। আমার সমাধানগুলি হ'ল মানক ক্রোন এন্ট্রিকে পছন্দসই ফ্রিকোয়েন্সিতে গুণ করা হয়েছিল। আমার ক্রন্টব দেখতে দেখতে:
* * * * * /usr/local/bin/php /var/www/myscript.php
* * * * * sleep 10; /usr/local/bin/php /var/www/myscript.php
* * * * * sleep 20; /usr/local/bin/php /var/www/myscript.php
* * * * * sleep 30; /usr/local/bin/php /var/www/myscript.php
* * * * * sleep 40; /usr/local/bin/php /var/www/myscript.php
* * * * * sleep 50; /usr/local/bin/php /var/www/myscript.php
আপনি যদি myscript.php এর ফলাফলগুলি দেখতে চান, যেমন ডিবাগিংয়ের জন্য, কেবল সংযোজন করুন
&> /tmp/myscipt.log
উপরের ক্রোনট্যাবের প্রতিটি লাইনে। তারপরে stderr এবং stdout লগ ফাইলে পুনঃনির্দেশিত হন।
আমি মনিট ব্যবহার করতাম এবং চক্রের সময়টি 10 সেকেন্ডে সেট করতাম । ক্রোন সিস্টেমের বাইরে এটি পরিচালনা করার জন্য এটি একটি পরিষ্কার উপায়।
আমি এটি নির্দিষ্ট স্ক্রিপ্টগুলি দিয়ে করি যা 15 সেকেন্ডের ব্যবধানে চালানো দরকার।
দেখুন: জেডএফএস পুলের ইনক্রিমেন্টাল / অবিচ্ছিন্ন ব্যাকআপগুলি কীভাবে সম্পাদন করবেন?
আপনি যদি 10 সেকেন্ডে যেতে চান, উদাহরণস্বরূপ 5 সেকেন্ড, আমি এইরকম একটি ছোট স্ক্রিপ্ট দিয়ে একজন কর্মী লুপ তৈরি করার পরামর্শ দিচ্ছি:
#!/bin/bash
INTERVAL=5
while true; do
echo "do something"
# wait for next interval
WAIT_UNTIL=$(($(date +%s) + $INTERVAL))
while [ $(date +%s) -lt $WAIT_UNTIL ]; do
sleep 1
done
done
আপনার যদি দ্বিতীয় সেকেন্ডে যেতে হয়, ডেট কমান্ডে মাইক্রোসেকেন্ড যুক্ত করুন।
* * * * * script to run
* * * * * sleep 10; script to run
* * * * * sleep 20; script to run
এখানে স্ক্রিপ্টটি 10 সেকেন্ডের ব্যবধানের সাথে চালানো যেতে পারে ...