मॉनिटर को कमांड लाइन से स्विच करें


21

चूंकि मुझे अपने लक्ष्य को प्राप्त करने के लिए एक अलग विधि मिली, और चूंकि कोई भी उत्तर मेरे पिछले प्रश्न पर पोस्ट नहीं किया गया था, इसलिए मैंने उस प्रश्न का मिलान किया है जो मुझे मिला था।

क्या मेरे लैपटॉप के मॉनिटर को बंद करने और पूरी तरह से कमांड लाइन से बाहरी मॉनिटर (और इसके विपरीत) को चालू करने का कोई तरीका है?


मैं ठीक उसी चीज के लिए गुगली कर रहा था और मैं इस सवाल पर लड़खड़ा गया जो आपने केवल 7 मिनट पहले पूछा था। यह बहुत ही अद्भुत है। मुझे आशा है कि आपको उत्तर मिल जाएगा।
जद लॉन्ग

मुझे पता है कि आप एक मूल xorg.confको रूट ( /root/yorg.conf.new) निर्देशिका में छोड़ सकते हैं , यदि आप पुनर्प्राप्ति मोड में बूट करते हैं और निष्पादित X --configure(या समान) करते हैं।
बॉबी

समस्या (कम से कम मेरे लिए) यह है कि मैं एक xorg.conf को हाथ से लिखना नहीं चाहता। मैं अपनी वर्तमान सेटिंग्स को xorg.conf प्रारूप में डंप करना चाहता हूं और फिर जीयूआई के साथ सेटिंग्स बदल देता हूं और फिर फाइल में डंप करता हूं। तब मैं वास्तव में आसान दो सेटिंग्स के बीच बदलने के लिए एक स्क्रिप्ट लिख सकता हूं। अभी मुझे जीयूआई में जाना है और अपनी सेटिंग्स बदलने के लिए आधा दर्जन बार क्लिक करना होगा।
जेडी लॉन्ग

@ जेडडी लॉन्ग: ठीक यही मैं भी करने की कोशिश कर रहा हूं। यदि आपको कभी कोई रास्ता मिले तो यहाँ अवश्य लिखें। मेरी स्क्रिप्ट के लिए केवल दो चीजें गायब हैं xorg.conf फाइलें, और वर्तमान डिस्प्ले को रीफ्रेश करने के लिए एक कमांड है (बिना जीडीएम पुनरारंभ करने के लिए)।
मालाबार 2

मैं आज डिस्प्रर के साथ प्रयोग कर रहा हूं ( willem.engen.nl/projects/disper )। मदद फ़ाइल एक -p विकल्प दिखाती है जिसे निर्यात करना चाहिए। केवल उस स्विच को लागू नहीं किया गया है। सैड ट्रॉम्बोन
JD लॉन्ग

जवाबों:


28

आज्ञाओं के साथ

xrandr --output VGA-0 --auto
xrandr --output LVDS --off 

स्क्रीन स्वचालित रूप से बाहरी डिस्प्ले में स्थानांतरित हो जाती है। यह भी sudo शक्तियों की जरूरत नहीं है। डिस्प्ले के नाम का पता लगाने के लिए:

xrandr -q

जो कुछ इस तरह देना चाहिए:

VGA-0 connected 1280x1024+0+0 (normal left inverted right x axis y axis) 338mm x 270mm
...
LVDS connected (normal left inverted right x axis y axis)
...

प्रदर्शित करने का विस्तार संभवतः इसी तरह से किया जा सकता है।


एक्सरैंडर (किसी भी झंडे के साथ) चलने पर मुझे संदेश "डिस्प्ले नहीं खोल सकता" मिलता है। क्या कारण हो सकता है?
ब्रांडीज़ी

4
यदि xrandr -qदेता है LVDS1और VGA1: केवल बाहरी xrandr --output VGA1 --auto --output LVDS1 --off:। विस्तारित बाएं, आंतरिक प्राथमिक xrandr --output VGA1 --auto --left-of LVDS1 --output LVDS1 --auto --primary:। विस्तारित बाएं, बाहरी प्राथमिक xrandr --output VGA1 --auto --left-of LVDS1 --primary --output LVDS1 --auto:। केवल आंतरिक xrandr --output VGA1 --off --output LVDS1 --auto:।

अच्छा जवाब! शायद शुरुआती लोगों के लिए समझाने लायक है जो आमतौर पर वीजीए और एलवीडीएस के बीच आंतरिक और बाहरी होंगे?
मतिफौ

4

यह निश्चित रूप से आपके प्रश्न का सीधा उत्तर नहीं है। लेकिन मैंने इसे अपने उपयोग के मामले में मददगार पाया। यह कॉन्फ़िगरेशन फ़ाइल का निर्यात नहीं है, लेकिन यह दिखाता है कि शेल स्क्रिप्ट में स्वचालित रूप से डिस्प्रेट कैसे करें। मैं इसे डॉक / अन-डॉक चलाने के लिए हर बार सेट कर रहा हूं और यह डॉकिंग और मेरे लैपटॉप को अनडॉक करने पर मेरे डिस्प्ले के मुद्दों को ठीक करने लगता है:

आपको डिस्प्रेटर और पायथन स्थापित करना होगा।

#!/bin/sh
#
# Detect displays and move panels to the primary display
#

PYTHON=python2.6
DISPER=/usr/bin/disper

# disper command will detect and configure monitors
$PYTHON $DISPER --displays=auto -e -t left

# parse output from disper tool how many displays we have attached
# disper prints 2 lines per displer
lines=`$PYTHON $DISPER -l|wc -l`

display_count=$((lines / 2))

echo $display_count

echo "Detected display count:" $display_count

# Make sure that we move panels to the correct display based
# on the display count
if [ $display_count = 1 ] ; then
    echo "Moving panels to the internal LCD display"
    gconftool-2 \
    --set "/apps/panel/toplevels/bottom_panel_screen0/monitor" \
    --type integer "0"
    gconftool-2 \
    --set "/apps/panel/toplevels/top_panel_screen0/monitor" \
    --type integer "0"
    sleep 5
    pkill gnome-panel
else
    echo "Moving panels to the external display"
    gconftool-2 \
    --set "/apps/panel/toplevels/top_panel_screen0/monitor" \
    --type integer "1"
    gconftool-2 \
    --set "/apps/panel/toplevels/bottom_panel_screen0/monitor" \
    --type integer "1"
    sleep 5
    pkill gnome-panel
fi

डिस्पेर एक उपयोगी उपकरण की तरह लगता है। मैं इसे देखूंगा और देखूंगा कि क्या मैं इसे अपने मामले में फिट बना सकता हूं। फर्क सिर्फ इतना है कि मैं लैपटॉप के मॉनीटर को डिसेबल करने के बजाय उसे डिसेबल करना चाहता हूं। यह मेरे कम-अंत वाले लैपटॉप पर थोड़ा चिकना है, और यह स्वचालित रूप से पैनलों से संबंधित है।
मालाबार

दूसरे विचार पर, मेरे एटीआई वीडियो कार्ड का समर्थन नहीं किया जा सकता है, क्योंकि वे केवल एनवीडिया का समर्थन करने का दावा करते हैं।
मालाबार

ठीक है, सांप पेज ने मुझे इस पृष्ठ पर पहुंचाया : thinkwiki.org/wiki/Sample_Fn-F7_script यह बताता है कि xrandr कमांड के साथ मॉनिटर को स्विच करना बहुत आसान है।
मालाबार

Xrandr लिंक पोस्ट करने के लिए धन्यवाद। मैं उसकी जांच करूंगा। मैं एक ही सामान के साथ चारों ओर चक्कर लगा रहा हूँ। एफडब्ल्यूआईडब्ल्यू, मेरे लैपटॉप में एक इंटेल कार्ड है और मैं बिना किसी समस्या के डिस्प्रेटर का उपयोग कर रहा हूं।
जेडी लॉन्ग
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.