উত্তর:
এই স্ক্রিপ্টটি স্থিতি টগল করবে এবং কী হয়েছে তা নিশ্চিত করতে একটি বার্তা প্রদর্শন করবে।
#!/bin/bash
if [ $(rfkill list wifi | grep "Soft blocked: yes" | wc -l) -gt 0 ] ; then
rfkill unblock wifi
zenity --info --text "Enabled wireless"
else
rfkill block wifi
zenity --info --text "Disabled wireless"
fi
জেনটি প্রম্পটগুলি অদৃশ্য হওয়ার জন্য তাদের এ জাতীয় পরিবর্তন করুন:
zenity --info --text "Enabled wireless" --timeout="5"
zenity --info --text "Disabled wireless" --timeout="5"
বা আপনার স্ক্রিনের কোণে প্রদর্শিত বিজ্ঞপ্তিগুলি তৈরি করুন।
sudo apt-get install libnotify-bin
জোনেটি লাইনগুলি প্রতিস্থাপন করুন
notify-send -i network-wireless-full "Wireless enabled" "Your wireless adaptor has been enabled."
notify-send -i network-wireless-disconnected "Wireless disabled" "Your wireless adaptor has been disabled."
--timeout="n"
zenity জন্য বিকল্প।
আমি কিছু সময়ের জন্য এটির জন্য একটি সমাধান খুঁজছি, এবং পুরোপুরি প্রচুর টিপস এবং কৌশল ব্যবহার করেছি। পরিশেষে আমি আমার জন্য কার্যকর সমাধানটি খুঁজে পেয়েছি এবং একটি নবাগত ওয়াক-থ্রো তৈরি করার সিদ্ধান্ত নিয়েছি। আমার সাথে থাকুন, এটি আপনার মতো আমার অনেকের চেয়ে লিনাক্সে কম প্রোগ্রাম করতে সক্ষম ব্যক্তিদের জন্যও;
উপরের বাম স্লাইড আউট বার (ড্যাশ হোম) এর লঞ্চার আইকনটি ক্লিক করুন, 'জিডিট' টাইপ করুন এবং এন্টার টিপুন।
আপনি এখন স্ক্রিপ্ট তৈরি করতে যাচ্ছেন যা ওয়াইফাই টগল করবে;
আমি নেটওয়ার্ক ম্যানেজার শর্টকাট ব্যবহার করেছি; nmcli nm wifi, ওয়াইফাই রাষ্ট্র নির্ধারণ করতে এবং এটি নিয়ন্ত্রণ করতে। আমি উপরের উদাহরণে প্রদত্ত বিজ্ঞপ্তি স্ক্রিপ্টটি ওয়াইফাই রাষ্ট্রটি প্রদর্শন করতে ব্যবহার করেছি। এখানে আমার স্ক্রিপ্ট;
#!/bin/bash
if [ $(nmcli nm wifi | grep "disabled" | wc -l) -eq 1 ] ; then
nmcli nm wifi on
notify-send -i network-wireless-full "Wireless enabled" "Your wireless adaptor has been enabled."
else
nmcli nm wifi off
notify-send -i network-wireless-disconnected "Wireless disabled" "Your wireless adaptor has been disabled."
fi
আপনি সবেমাত্র খোলেন এমন সম্পাদকে এটিকে অনুলিপি করুন এবং আটকান এবং আপনার উপযুক্ত ফাইল ফাইল হিসাবে এটি সংরক্ষণ করুন (আমার ওয়াইফিটোগল ছিল)।
পরবর্তী পদক্ষেপটি ছিল ফাইলটি এক্সিকিউটেবল করার জন্য (হোম ফোল্ডারে; ডান আপনার ফাইল, বৈশিষ্ট্য, অনুমতি ট্যাব, 'এক্সিকিউটযোগ্য হিসাবে চালানো' -তে চেক চিহ্ন)।
তারপরে ফাইল সিস্টেম / ইউএসআর / বিন ডিরেক্টরিতে একটি অনুলিপি রাখুন (ওপেন টার্মিনাল, sudo nautilus টাইপ করুন। ফাইল সিস্টেমে নেভিগেট করুন, তারপরে usr, তারপরে বিনটি খুলুন এবং পেস্ট করুন y)।
শেষ পর্যন্ত, সিস্টেম সেটিংস -> কীবোর্ড -> শর্টকাট ট্যাবে যান; নীচে সামান্য + বোতাম টিপুন, আপনার টগলটির জন্য নামটি পূরণ করুন এবং আপনি যে স্ক্রিপ্টটি দিয়েছেন তার ফাইল নাম পূরণ করুন (আমার ক্ষেত্রে wifitoggle)। প্রয়োগ ক্লিক করুন এবং তার ডানদিকে 'ডায়াবেড' পাঠ্যে ক্লিক করুন এবং তারপরে আপনার হট কীগুলি টিপুন। সম্পন্ন!
হ্যাঁ আপনি cnetworkmanager সঙ্গে পারেন । এটি সংগ্রহস্থলে রয়েছে তাই এটি ইনস্টল করুন এবং cnetworkmanager --wifi=no
বেতার অক্ষম করতে চাইলে কমান্ডটি দিয়ে একটি লঞ্চার তৈরি করুন এবং cnetworkmanager --wifi=yes
বেতার সক্ষম করতে চাইলে কমান্ডটি তৈরি করুন ।
এরকম কিছু: sudo ifconfig <wlan0> down
বা sudo ifconfig <wlan0> up
?
এখানে আমার স্ক্রিপ্ট:
#!/bin/bash
echo "Checking wireless iface status...."
if iwconfig wlan0 | grep Quality
then
echo "Wi/Fi is being disabled...."
if rfkill block wifi
then
echo "Wi/Fi is now OFF!"
fi
else
echo "Wi/Fi is being enabled...."
if rfkill unblock wifi
then
echo "Wi/Fi is now ON!"
fi
fi
এফওয়াইআই: ডেভিড এবং মিস্টারবেন হিসাবে প্রস্তাবিত হিসাবে আরফকিল আপনি যদি নেটওয়ার্ক-ম্যানেজার ব্যবহার করেন তবে এটি আরও ভাল ।
ifconfig ইন্টারফেসটি অক্ষম করবে, তবে নেটওয়ার্ক-ম্যানেজার এটি স্বয়ংক্রিয়ভাবে পুনরায় সক্ষম করবে।
আমি ব্যবহার করি এমন আরও একটি চটপটিটি ডাব্লুএল কর্নেল মডিউলটি সরিয়ে দিচ্ছে।
অফ:
rmmod wl
চালু:
modprobe ডাব্লুএল