আমি একটি বাশ স্ক্রিপ্ট লেখার চেষ্টা করছি যা ডিভাইস সংযোগের জন্য বিটিমনে পোল করে। আমি একটি কার্যনির্বাহী সমাধান পেয়েছি, তবে এটি অযৌক্তিকভাবে ধীর গতির এবং এটি মনে হচ্ছে ম্যাচটি খুঁজে পাওয়ার পরে (প্রায় 25 সেকেন্ড) বের হওয়ার জন্য সমস্যাটি গ্রেপ হয়ে উঠছে। grep
এটির গতি বাড়ানোর জন্য বা এটি পুরোপুরি ব্যবহার এড়াতে আমি কী করতে পারি ?
#!/bin/bash
COUNTER=0
while :
do
until btmon | grep -m 1 '@ Device Connected'
do :
done
let COUNTER=COUNTER+1
echo on 0 | cec-client RPI -s -d 1
sleep 5
echo as | cec-client RPI -s -d 1
until btmon | grep -m 1 '@ Device Disconnected'
do :
done
let COUNTER=COUNTER-1
if [ $COUNTER -eq 0 ];
then echo standby 0 | cec-client RPI -s -d 1;
fi
done
সম্পাদনা: স্পষ্ট করার জন্য, btmon
এবং এটি একটি ব্লুটুথ মনিটরিং সরঞ্জাম যা ব্লুজ স্যুটটির অংশ, এবং সিইসি-ক্লায়েন্ট এমন একটি ইউটিলিটি যা এইচডিএমআই-সিইসি সিরিয়াল বাস (অন্যান্য বিষয়গুলির মধ্যে) জুড়ে কমান্ড দেওয়ার জন্য libCEC এর সাথে প্যাকেজড।
btmon
নিজেকে বাফারিং প্রয়োগ করে, এক্ষেত্রে আপনার ভাগ্যের বাইরে।
btmon
আউটপুট দেয়? আপনি কি নিশ্চিত যে এটি কেবল বাফারিংয়ের বিষয় নয়?