मैं आपको दो शेल स्क्रिप्ट प्रदान कर रहा हूं। यह विंडोज़ की स्थिति और आकार की आपकी व्यवस्था को बचाने में आपकी सहायता करेगा । यदि किसी तरह आपकी इच्छित विंडो व्यवस्था गड़बड़ा जाती है, तो आप इन स्क्रिप्ट का उपयोग करके सभी विंडो के लिए सटीक विंडो आकार और पदों के साथ उन व्यवस्थाओं को पुनर्स्थापित करने में सक्षम होंगे ।
wmctrl
जब तक आपके पास पहले से ही नहीं है, आपको स्थापित करने की आवश्यकता है । टर्मिनल के माध्यम से स्थापित करें,
sudo apt-get install wmctrl
विंडोज़ कॉन्फ़िगरेशन को बचाने के लिए स्क्रिप्ट
# Script_Name: save_window_conf.sh
#!/bin/bash
if [ -f $HOME/.my_windows_config.txt ]; then
echo -e "Information: Previous configuration file \"$HOME/.my_windows_config.txt\" already exists.\nTo save a new configuration remove it manually using the following command,\n\n\trm $HOME/.my_windows_config.txt"
exit 1
else
wmctrl -p -G -l | awk '($2 != -1)&&($3 != 0)&&($NF != "Desktop")' | awk '{print $1}' | while read mywinid
do
xwininfo -id "$mywinid" >> $HOME/.my_windows_config.txt
done
fi
निष्पादन के समय उपरोक्त स्क्रिप्ट आपकी सभी खुली खिड़कियों के लिए .my_windows_config.txt
आपकी होम डाइरेक्टरी में नाम की फ़ाइल के लिए आपकी विंडोज़ स्थिति और आकार को बचाएगा । यह एक छिपी हुई पाठ फ़ाइल है।
विंडोज़ कॉन्फ़िगरेशन को फिर से लोड करने के लिए स्क्रिप्ट
# Script_Name: load_window_conf.sh
#!/bin/bash
file=$HOME/.my_windows_config.txt
declare -a mywinid
declare -a x
declare -a y
declare -a width
declare -a height
nl=$(cat "$file" | grep xwininfo |wc -l)
for i in $(seq 1 $nl)
do
mywinid[i]=$(cat "$file" | grep "xwininfo" | awk -v p="$i" '{if(NR==p) print $4}')
x[i]=$(cat "$file" | grep "Absolute upper-left X" | awk -v p="$i" '{if(NR==p) print $NF}')
y[i]=$(cat "$file" | grep "Absolute upper-left Y" | awk -v p="$i" '{if(NR==p) print $NF}')
width[i]=$(cat "$file" | grep "Width" | awk -v p="$i" '{if(NR==p) print $NF}')
height[i]=$(cat "$file" | grep "Height" | awk -v p="$i" '{if(NR==p) print $NF}')
done
for it in $(seq 1 $nl)
do
wmctrl -i -r "${mywinid[$it]}" -e 0,"${x[$it]}","${y[$it]}","${width[it]}","${height[it]}"
done
जब आप दूसरी स्क्रिप्ट निष्पादित करते हैं तो यह आपके सभी विंडोज़ के लिए सटीक आकार के साथ आपकी विंडोज़ स्थिति को बहाल करेगा।
प्रयोग
इन लिपियों को अपनी $HOME/bin/
निर्देशिका में सहेजें । $HOME/bin/
अपने में जोड़ें PATH
। इसके लिए अपने अंत में इन पंक्तियों को जोड़ें$HOME/.bashrc
PATH=$HOME/bin:$PATH
export PATH
यह आपको उन लिपियों को उनके नाम के साथ निष्पादित करने में सक्षम करेगा। स्क्रिप्ट निष्पादन की अनुमति दें,
chmod +x $HOME/bin/save_window_conf.sh
chmod +x $HOME/bin/load_window_conf.sh
अपने में कॉन्फ़िगरेशन को बचाने के लिए $HOME/.my_windows_config.txt
टर्मिनल में चलने वाली अपनी सभी विंडो खोलने और समायोजित करने के बाद,
save_window_conf.sh
अपने से कॉन्फ़िगरेशन पुनः लोड करने के लिए $HOME/.my_windows_config.txt
load_window_conf.sh
आशा है कि यह आपकी समस्या को हल कर देगा। यहाँ एक स्क्रीन शॉट है,