আমার মনে xdotool getactivewindowহয় আপনি যা চান - আপনি কি চেষ্টা করে দেখেছেন?
কমান্ড লাইনে আর কোনও xdotool সাব কম্যান্ড না থাকলে এটি উইন্ডো আইডিটি (উইন্ডো স্ট্যাক থেকে) মুদ্রণ করে।
ইন xdotool getactivewindow getwindowpidউদাহরণস্বরূপ, getactivewindowজানালা স্ট্যাক আইডি রাখে, এবং getwindowpidPID, ক্যোয়ারীতে এই আইডি ব্যবহার করে। নোট করুন যে টার্মিনালে এই কমান্ডটি চালানো সর্বদা টার্মিনাল উইন্ডোর আইডি ফিরিয়ে দেবে, কারণ এটি সক্রিয় রয়েছে। অন্য উইন্ডো থেকে আইডি পাওয়ার জন্য চেষ্টা করুন sleep 2s && xdotool getactivewindowএবং দুটি সেকেন্ডের সময়কালে আগ্রহের উইন্ডোটি নির্বাচন করুন।
xdotoolউইন্ডো হ্যান্ডলিংয়ের জন্য অন্যান্য সরঞ্জামগুলি
ব্যবহার করার সময় একটি জটিলতা রয়েছে :
যদিও xdotoolআউটপুট ব্যবহার windwo ID র জন্য সংখ্যার দশমিক, অন্যান্য অধিকাংশ সরঞ্জাম ব্যবহার হেক্সাডেসিমেল আউটপুট সংখ্যা (তারা সাধারণত ইনপুট জন্য উভয় সমর্থন)।
উদাহরণস্বরূপ, আপনি যদি উইন্ডোটি সহ সন্ধান করেন তবে আপনি সমস্ত উইন্ডো তালিকাভুক্ত xdotool getactivewindowকরার ফলাফল খুঁজে পাবেন না xwininfo -root -tree। এটি প্রথমে একটি হেক্সাডেসিমাল সংখ্যায় রূপান্তর করা দরকার:
$ xdotool getactivewindow
69206716
$ printf 0x%x 69206716
0x42002bc
$ xwininfo -root -tree | grep 0x42002bc
0x42002bc (has no name): ("konsole" "Konsole") 1154x781+0+0 +1289+498
দশমিককে হেক্সাডেসিমালে রূপান্তর করা:
printf 0x%x 69206716
হেক্সাডেসিমালকে দশমিক রূপান্তর করা:
printf %i 0x42002bc
xdotool getactivewindowকমান্ড চেষ্টা করেছি এবং সমস্যাটি হ'ল এটি টার্মিনালে ফলাফল মুদ্রণ করে না। এটি উইন্ডো স্ট্যাকের ফলাফল সংরক্ষণ করে। এই কমান্ডের কিছু সংখ্যা ছাপে কিন্তু এটি উইণ্ডো আই (যেমন 35651588) নয়