এক্সউবুন্টুতে ওয়ালপেপার পরিবর্তন করার আদেশ


15

গুগল সার্চ করলে কমান্ডটি প্রকাশ পায়

xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitor0/image-path -s <image-path>

এই কমান্ডটি প্রথমবার চালানোর পরে আমি একটি বার্তা পেয়েছি যে সম্পত্তি / ব্যাকড্রপ / স্ক্রিন 0 / মনিটর 0 / চিত্র-পাথ চ্যানেল xfce4- ডেস্কটপে উপস্থিত নেই।

সুতরাং, আমি এই সম্পত্তি তৈরি করেছি:

xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitor0/image-path -n -t string -s <image-path>

কিন্তু এখনও পটভূমি পরিবর্তন হয়নি।

এরপরে আমি এক্সউবুন্টুর ডেস্কটপ সেটিংস অ্যাপ্লিকেশন থেকে স্পেস -03.jpg থেকে স্পেস -04.jpg এ ব্যাকগ্রাউন্ডটি পরিবর্তন করেছি। তারপরে আমি চালাচ্ছি:

$ xfconf-query -c xfce4-desktop -p /backdrop -lv
/backdrop/screen0/image-path                           /usr/share/backgrounds/space-03.jpg
/backdrop/screen0/monitor0/image-path                  /usr/share/backgrounds/space-03.jpg
/backdrop/screen0/monitor0/image-show                  true
/backdrop/screen0/monitor1/image-path                  /usr/share/backgrounds/space-03.jpg
/backdrop/screen0/monitor1/image-show                  true
/backdrop/screen0/monitorLVDS1/workspace0/color-style  0
/backdrop/screen0/monitorLVDS1/workspace0/image-style  5
/backdrop/screen0/monitorLVDS1/workspace0/last-image   /usr/share/backgrounds/space-04.jpg

আপনি দেখতে পাচ্ছেন, সম্পত্তি /backdrop/screen0/monitorLVDS1/workspace0/last-imageপরিবর্তন হয়েছে (!)।

যদি আমি এই সম্পত্তিটি পরিবর্তন করি তবে এটি ঠিক কাজ করে তবে জিনিসটি আমার প্রোগ্রামে (ওয়ালচ) এ প্রয়োগ করার জন্য আমার একটি সাধারণ উপায় খুঁজে বের করতে হবে।

এমনকি Variety(যা খুব সুন্দর প্রোগ্রাম, যাইহোক ) আমার মেশিনে সঠিকভাবে কাজ করে না এবং সম্পত্তিটি /backdrop/screen0/monitor0/image-pathযা কিছুই করে না তা পরিবর্তন করতে পছন্দ করে।

একটি উপায় হ'ল সমস্ত সম্ভাব্য বৈশিষ্ট্য তৈরি করা এবং প্রয়োজনে এক সাথে একই সাথে সমস্ত পরিবর্তন করা। 2 কারণের কারণে আমি এই সমাধানটি পছন্দ করি না:

  1. বেশ কয়েকটি সিস্টেম কল প্রয়োজন হবে
  2. এক পর্যায়ে আমার বর্তমান চিত্রটির পথ গ্রহণ করতে হবে (এর ফোল্ডারটি খোলার জন্য, এর পাথটি অনুলিপি করতে, এটি মুছে ফেলুন এবং প্রোগ্রামটি সরবরাহ করে এমন কিছু অন্যান্য ফাংশন)। প্রোগ্রামটি উপলভ্য করার জন্য কোন সম্পত্তি সত্যিকারের সেট ইমেজের পথ ধরে তা আমি জানি না।

এক্সএফসিই কেন এটি এত জটিল করে ফেলেছে তা আমি বুঝতে পারি না। গেটসিংয়ের মতো কেন একটি সম্পত্তি যথেষ্ট হবে না?



কেবল এটি চেষ্টা করে দেখুন, xfconf-query -c xfce4-desktop -p / backrod / screen0 / monitor0 / চিত্র-পথ -s /usr/share/backgrounds/xfce/xfce-blue.jpg আমার পক্ষে কাজ করে .... কখনও পরিবর্তন হয় নি আমার ব্যাকগ্রাউন্ড চিত্রটি আগে - রুট সুবিধাগুলি ছাড়াই এটি করতে যত্ন নিন কারণ সেটিংসটি ব্যবহারকারী নির্দিষ্ট।
ওল্ফগ্যাং

1
@ হ্যাকারম্যানিয়া - সম্ভবত এখানে # 9-তে এই স্ক্রিপ্টের মতো কিছু রয়েছে - এটি কীভাবে এগিয়ে যেতে হবে (বা কমপক্ষে সঠিক মনিটর সনাক্ত করতে হবে) সম্পর্কে আপনাকে কিছু ধারণা দেয়? bugs.launchpad.net/viversity
+

অনুরূপ প্রশ্নটি এখানে: http://askubuntu.com/questions/380550/xubuntu-how-to-set-the-wallpaper-
using

@ ফসফ্রিডম নীচের উত্তরে আমি যে উত্তর দিয়েছি তা দেখুন।
হাইট্রোমো

উত্তর:


4

আমি মনে করি যে কাজ করা উচিত

সংযুক্ত ডিভাইসগুলি পেতে এবং তাদের গণনা করতে নিম্নলিখিত কোডটি ব্যবহার করুন:

connectedOutputs=$(xrandr | grep " connected" | sed -e "s/\([A-Z0-9]\+\) connected.*/\1/")
activeOutput=$(xrandr | grep -e " connected [^(]" | sed -e "s/\([A-Z0-9]\+\) connected.*/\1/") 
connected=$(echo $connectedOutputs | wc -w)

তারপরে আপনাকে সেগুলি নিয়ে কারসাজি করতে হবে এবং চিত্র-পথ বা শেষ-চিত্রের জন্য মান নির্ধারণ করতে হবে কিনা তা চয়ন করতে হবে

xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitor0/image-path -n -t string -s  ~/Pictures/1.jpeg
xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitorLVDS1/workspace0/last-image -n -t string -s  ~/Pictures/1.jpeg

for i in $(xfconf-query -c xfce4-desktop -p /backdrop -l|egrep -e "screen.*/monitor.*image-path$" -e "screen.*/monitor.*/last-image$"); do
    xfconf-query -c xfce4-desktop -p $i -n -t string -s ~/Pictures/2.png  
    xfconf-query -c xfce4-desktop -p $i -s ~/Pictures/2.png

done

ধরে নিন যে ডিফল্টরূপে স্ট্রিং তৈরি করতে 1.jpeg হ'ল যে কোনও ফাইল। এবং 2.png হ'ল কাঙ্ক্ষিত ছবি সেট করা। Xfce4- ডেস্কটপ উপস্থিত রয়েছে তা নিশ্চিত করার জন্য আমি প্রথম লাইন যুক্ত করেছি।

এই স্ক্রিপ্টটি আমার মেশিনে পরীক্ষা করা হয়েছিল এবং এটি ভালভাবে কাজ করছে।

আশা করি এটি আমার বন্ধুকে সাহায্য করবে

সম্পাদনা: পোর্ট নামের একটি তালিকা এখানে এর মতো পাওয়া গেছে :

আউটপুট পোর্টের নাম

ইন্টেল ড্রাইভার - ইউএমএস

ভিজিএ - এনালগ ভিজিএ আউটপুট

এলভিডিএস - ল্যাপটপ প্যানেল

ডিপি 1 - ডিসপ্লেপোর্ট আউটপুট

টিভি - ইন্টিগ্রেটেড টিভি আউটপুট

টিএমডিএস -১ - প্রথম ডিভিআই এসডিভিও আউটপুট

টিএমডিএস -২ - দ্বিতীয় ডিভিআই এসডিভিও আউটপুট

এসডিভিও এবং ডিভিও টিভি আউটপুটগুলি এই মুহুর্তে ড্রাইভার দ্বারা সমর্থিত নয়।

ইন্টেল ড্রাইভার - কেএমএস

এলভিডিএস 1 - ল্যাপটপ প্যানেল

ভিজিএ 1 - এনালগ ভিজিএ আউটপুট

ডিভিআই 1 - ডিজিটাল ভিডিও আউটপুট

রাডিয়ন ড্রাইভার

ভিজিএ -0 - এনালগ ভিজিএ আউটপুট

এলভিডিএস - ল্যাপটপ প্যানেল

এস-ভিডিও - ইন্টিগ্রেটেড টিভি আউটপুট

ডিভিআই -0 - ডিভিআই আউটপুট

আরও তথ্যের জন্য এখানে চেক করুন


কেন যে কাজ করা উচিত?
শেঠ

@ সেথুন যেহেতু আমি সমস্ত উপলভ্য মনিটরের মধ্যে লুপ করছি এবং আমি পাওয়া মনিটরের জন্য উপযুক্ত মান নির্ধারণ করব। হয় সর্বশেষ চিত্র বা চিত্রের পথ
কামিল

নতুন ইনস্টল হওয়া এক্সএফসিই সিস্টেমে মানগুলিও বিদ্যমান না। আপনি একবার আপনার ডেস্কটপ পটভূমিতে ম্যানুয়ালি পরিবর্তন করলে সেগুলি তৈরি করা হচ্ছে। সুতরাং, এটি আমার মতে ভাল সমাধান নয়। আমি আমার প্রশ্নের এই উত্তর অন্তর্ভুক্ত। আমি স্পষ্টভাবে বলছি যে আমি তাদের সবাইকে চেষ্টা করতে পারি (প্রতিটি সময় এগুলি তৈরি এবং পরিবর্তন করতে পারি), তবে এটি সমস্যার উত্তম সমাধান হতে অনেক দূরে।
হাইট্রোমো

আপনি যেমন করেন
তেমন

@হেকারমানিয়া সম্পাদনাটি দেখুন
কামিল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.