আমি ডিসপ্লে রেজোলিউশন রিপোর্ট করার একটি পদ্ধতি খুঁজছি। আমি লঞ্চ করার জন্য স্ক্রিপ্টগুলি সেট আপ করতে rdesktopচাই এবং আমি এটি বিভিন্ন মেশিনে বিভিন্ন রেজোলিউশন সহ চালু করতে চাই, তাই আমি এটিকে গতিশীলভাবে নির্ধারণের জন্য একটি উপায় চাই।
আমি ডিসপ্লে রেজোলিউশন রিপোর্ট করার একটি পদ্ধতি খুঁজছি। আমি লঞ্চ করার জন্য স্ক্রিপ্টগুলি সেট আপ করতে rdesktopচাই এবং আমি এটি বিভিন্ন মেশিনে বিভিন্ন রেজোলিউশন সহ চালু করতে চাই, তাই আমি এটিকে গতিশীলভাবে নির্ধারণের জন্য একটি উপায় চাই।
উত্তর:
কমান্ডটি ব্যবহার করুন xrandr। কোনও যুক্তি ছাড়াই এটি উপলভ্য রেজোলিউশন এবং বর্তমানের (একটি নক্ষত্রের সাথে) প্রদর্শন করে, উদাহরণস্বরূপ:
$ xrandr | fgrep '*'
xrandr |g grep \*কৌতুকটি কি?
বিকল্প সমাধান: xdpyinfo | grep dimensions। xdpyinfoএর চেয়ে পুরনো xrandr, তাই আপনি যদি খুব পুরানো বিতরণ বা অন্য কোনও এক্স সার্ভার ব্যবহার করতে চান তবে এটি বেশি পোর্টেবল হতে পারে।
xdpyinfoসময় একটি পর্দা হিসাবে উপস্থিত হয় xrandr। প্রসঙ্গের উপর নির্ভর করে এটি সমস্যা হতে পারে বা নাও হতে পারে।
xdpyinfoপিক্সেলগুলিতে সঠিক মাত্রাগুলি রিপোর্ট করার সময় মনে হয়, এটি ভুল রেজোলিউশন (ডিপিআই) রিপোর্ট করে। যেমন dimesions 3840x2160 (নেটিভ এবং প্রকৃত) সঙ্গে আমার মনিটর এবং আকারের উপর 708mm X 399mm যেমন দ্বারা রিপোর্ট xrandr, xdpyinfoবলছেন যে রেজল্যুশন প্রতি ইঞ্চি 96x96 বিন্দু হয়।
আপনি নিম্নলিখিত কমান্ডটি ব্যবহার করে অনুভূমিক এবং উল্লম্ব রেজোলিউশন পেতে পারেন:
xdpyinfo | grep dimensions | awk '{print $2}' | awk -Fx '{print $1, $2}'
বা, আরও কমপ্যাক্ট আকারে (যেমন পিটারের পরামর্শ অনুসারে। ও এই মন্তব্যে):
xdpyinfo | awk -F'[ x]+' '/dimensions:/{print $3, $4}'
এক্সমেল এর জন্য, 1600x900 ডিসপ্লেতে এটি নিম্নলিখিত আউটপুটটি উত্পন্ন করবে:
1600 900
তারপরে আপনি কমান্ডটি ব্যবহার করে মানগুলিকে পৃথক ভেরিয়েবলে স্থাপন করতে পারেন:
read RES_X RES_Y <<<$(xdpyinfo | awk -F'[ x]+' '/dimensions:/{print $3, $4}')
কমান্ডটি ব্যবহার করে উপরের ভেরিয়েবলের মানগুলি প্রদর্শন করুন:
echo $RES_X, $RES_Y
1600x900 ডিসপ্লেতে আউটপুটটি হ'ল:
1600, 900
পোস্ট করার আগে আমার আরও কিছুটা শক্ত দেখা উচিত ছিল। xrandrঅন্য কোনও যুক্তি না দেওয়া থাকলে বর্তমান প্রদর্শন সেটিংস প্রতিধ্বনিত হবে।
ডিফল্টরূপে, এটি সমস্ত সম্ভাব্য প্রদর্শন সেটিংস ডাম্প করবে, এটি নিম্নরূপে ফিল্টার করা যেতে পারে:
xrandr | egrep '^[^ ]|[0-9]\*\+'
xrandrচিত্রম্যাগিক ব্যবহারের জন্য পরিষ্কার আউটপুটxrandr |grep \* |awk '{print $1}'