উত্তর:
আপনি যদি এমন কিছু ইনস্টল করেন তবে এটি করা সহজ xdotool
। তারপরে আপনি এটি করতে পারেন:
xdotool search --name "window name" windowsize 300 400
উইন্ডো শিরোনামে উপস্থিত একটি নাম বা রেগ প্রাক্তনের সাথে "উইন্ডো নাম" প্রতিস্থাপন করুন (আপনি উইন্ডো ক্লাস এবং অন্যান্য বিভিন্ন জিনিসও সন্ধান করতে পারেন), এবং উইন্ডোজাইজের পরে প্রদর্শিত দুটি সংখ্যা যথাক্রমে প্রস্থ এবং উচ্চতা। (আপনি পার্সেন্ট ইত্যাদি ব্যবহার করতে পারেন) man xdotool
এটি ইনস্টল হয়ে গেলে দেখুন ।
আপনি যদি লুসিড বা তার আগে থাকেন তবে আমি এক্সডটুল ওয়েবসাইটে যাওয়ার পরামর্শ দিচ্ছি তবে নতুন সংস্করণটি পেতে।
ফায়ারফক্সের আকার পরিবর্তন করতে উদাহরণস্বরূপ:
xdotool search --name "Mozilla Firefox" windowsize 1024 768
উইন্ডো ম্যানেজার যদি Xlib সমর্থন করে তবে। এটি উইন্ডোর আকার 500x300 এ সেট করতে পাইথন ব্যবহার করে:
WIDTH, HEIGHT = 500, 300
import Xlib
import Xlib.display
display = Xlib.display.Display()
root = display.screen().root
windowID = root.get_full_property(display.intern_atom('_NET_ACTIVE_WINDOW'), Xlib.X.AnyPropertyType).value[0]
window = display.create_resource_object('window', windowID)
window.configure(width = WIDTH, height = HEIGHT)
display.sync()
শক্ত অংশটি উইন্ডো আইডি পাচ্ছে; উপরের কোডটিতে এটি সক্রিয় উইন্ডোর আইডি পেয়েছে। আপনি যদি অন্য আইডি চান তবে প্রতিটি উইন্ডোর শিরোনাম এবং নিয়ন্ত্রণ পিআইডি পেতে আপনি এর মতো কিছু ব্যবহার করতে পারেন এবং সেইগুলির উপর ভিত্তি করে সঠিক আইডি চয়ন করতে পারেন:
windowIDs = root.get_full_property(display.intern_atom('_NET_CLIENT_LIST'), Xlib.X.AnyPropertyType).value
for windowID in windowIDs:
window = display.create_resource_object('window', windowID)
name = window.get_wm_name() # Title
prop = window.get_full_property(display.intern_atom('_NET_WM_PID'), Xlib.X.AnyPropertyType)
pid = prop.value[0] # PID
print pid
আমি পেতে <Xlib.protocol.request.GetProperty serial = 15, data = {'bytes_after': 0, 'property_type': 6, 'value': (32, array('I', [5810L])), 'sequence_number': 15}, error = None>
... কোন পরামর্শ প্রকৃত PID, বিছিন্ন কিভাবে?
name
।
get_full_property
কি .value[0]
( value
একটি হল অ্যারে )
এক্সএফসিই- তে নির্দিষ্ট পাইক্সফেস রয়েছে যা আপনাকে অজগর ভাষা ব্যবহার করে তা করতে দেয় । পাইক্সফেস এমন একটি এপিআই যা অন্যান্য বিষয়গুলির মধ্যে আপনাকে উইন্ডো ম্যানেজারের সাথে যোগাযোগ করতে দেয় । কমান্ড লাইন থেকে এটি ব্যবহার করার জন্য আপনাকে প্রথমে একটি স্ক্রিপ্ট প্রস্তুত করতে হবে।
আপনার ব্যবহারের উপর নির্ভর করে, এক্স উইন্ডো আইডি ব্যবহার করে এক্স-ভিত্তিক এপিআই ব্যবহার করার গুরুত্ব (যেমন পাইথন-এক্সলিব বা অন্য উত্তরে উল্লিখিত এক্সডটুলগুলি) অন্যদের তুলনায় যে উইন্ডো শিরোনামের সাথে উইন্ডোজ শিরোনাম ব্যবহার করে (যেমন ডাব্লুএমটিআরএল), কোনওটিই থাকতে পারে না উইন্ডোজগুলির মধ্যে বিভ্রান্তি, যার নিজস্ব শিরোনামে একই কীওয়ার্ড থাকতে পারে।
#!/bin/bash
#get window pid under mouse
xprop -id $(xwit -current -print | cut -d ":" -f 1) | grep _NET_WM_PID | cut -d "=" -f2 | cut -c 2-
আমি wmctrl আমার সবচেয়ে উপযুক্ত। এটি উবুন্টু এবং রাস্পবিয়ান এবং একটি ছোট প্যাকেজ হিসাবে উপলব্ধ এবং সম্ভবত অন্যান্য ডিস্ট্রোদের পক্ষেও।