명령 행에서 모니터 전환


21

목표를 달성하기위한 다른 방법을 찾았고 이전 질문에 대한 답변이 게시되지 않았으므로 찾은 답변과 일치하도록 질문을 변경했습니다.

명령 줄에서 랩톱 모니터를 끄고 외부 모니터를 켜거나 끄는 방법이 있습니까?


나는 똑같은 것을 찾기 위해 인터넷 검색을하고 있었고 7 분 전에 만 묻는이 질문에 걸려 넘어졌습니다. 놀랍습니다. 답변을 받으시기 바랍니다.
JD Long

복구 모드로 부팅하고 실행 (또는 유사) 하면 기본 디렉토리를 xorg.conf루트 ( /root/yorg.conf.new) 디렉토리에 놓을 수 있다는 것을 알고 있습니다 X --configure.
Bobby

문제는 (적어도 나를 위해) xorg.conf를 손으로 작성하고 싶지 않다는 것입니다. 현재 설정을 xorg.conf 형식으로 덤프 한 다음 GUI로 설정을 변경 한 다음 파일로 덤프합니다. 그런 다음 두 설정간에 정말 쉽게 변경하는 스크립트를 작성할 수 있습니다. 지금은 GUI로 이동하여 설정을 변경하려면 수십 번을 클릭해야합니다.
JD Long

@ JD Long : 정확히 내가하려고하는 것입니다. 방법을 찾으면 여기에 적어 두십시오. 내 스크립트에 누락 된 것은 xorg.conf 파일과 현재 화면을 새로 고치는 명령 (gdm 재시작없이)입니다.
Malabarba

나는 오늘 disper를 실험하고 있습니다 ( willem.engen.nl/projects/disper ). 도움말 파일에는 내보낼 -p 옵션이 표시됩니다. 해당 스위치 만 구현되지 않습니다. 슬픈 트롬본
JD Long

답변:


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)
...

디스플레이 확장은 아마도 비슷한 방식으로 이루어질 수 있습니다.


xrandr (플래그 포함)를 실행할 때 "디스플레이를 열 수 없습니다"라는 메시지가 나타납니다. 이유는 무엇입니까?
brandizzi

4
만약이 xrandr -q제공 LVDS1VGA1외부 전용 : : 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.

좋은 대답! VGA와 LVDS 사이의 내부 및 외부가 될 초보자를 설명 할 가치가 있습니까?
Matifou

4

이것은 귀하의 질문에 대한 직접적인 답변이 아닙니다. 그러나 내 유스 케이스에서 도움이되는 것으로 나타났습니다. 이것은 구성 파일을 내보내지는 않지만 셸 스크립트에서 disper를 자동화하는 방법을 보여줍니다. 도킹 / 도킹 해제 할 때마다 실행되도록 설정하고 노트북을 도킹하거나 도킹 해제 할 때 디스플레이 문제를 해결하는 것 같습니다.

당신은 있어야 디스를 파이썬이 설치되어 있어야합니다.

#!/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

Disper는 유용한 도구 인 것 같습니다. 나는 그것을 조사하여 내 사건에 맞출 수 있는지 알아볼 것이다. 유일한 차이점은 랩톱의 모니터를 확장하는 대신 비활성화하려는 것입니다. 저사양 랩탑에서는 조금 매끄럽고 패널을 자동으로 처리합니다.
Malabarba 2016 년

다시 생각할 때 내 ati 비디오 카드는 NVIDIA를 지원한다고 주장하기 때문에 지원되지 않을 수 있습니다.
Malabarba 2016 년

좋아, diper 페이지가이 페이지를 알려준 : thinkwiki.org/wiki/Sample_Fn-F7_script 는 xrandr를 명령으로 모니터를 전환 할 수 꽤 쉽게 턴에서.
Malabarba 2016 년

xrandr 링크를 게시 해 주셔서 감사합니다. 조사하겠습니다. 나는 같은 것들로 울퉁불퉁합니다. FWIW, 내 노트북에는 Intel 카드가 있으며 문제없이 disper를 사용하고 있습니다.
JD Long
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.