내 OS에는 밝기를 수동으로 설정할 수 있는 방법이 없으므로 이를 수행하기 위해 작은 쉘 스크립트를 작성했습니다.
#!/bin/sh
echo -n "Set Brightness To (from 0 to 100):"
read answer
echo $((answer * 8 + 50))>/sys/class/backlight/intel_backlight/brightness
그러나 문제는 GUI에서 직접 스크립트를 실행하면 터미널에서 사용자에게 입력하라는 메시지가 표시되지 않으며(답변 = 0) 스크립트가 사용자에게 입력하라는 메시지를 표시하려면 터미널에서 마우스 오른쪽 버튼을 클릭해야 한다는 것입니다.
이 스크립트를 실행할 때 어떻게 터미널을 직접 표시할 수 있나요?
답변1
입력 프롬프트
방법 1
를 사용하면 xterm
사용 중인 터미널 에뮬레이터에 대한 인수로 애플리케이션을 간단히 실행할 수 있습니다. 나는 여기를 사용하고 있습니다 xterm
:
$ xterm "./bright.bash"
이렇게 하면 애플리케이션이 xterm
터미널 내부에서 실행됩니다.
같은 방법으로 gnome-terminal
.
$ gnome-terminal -e ./bright.bash
방법 #2 - 명상
GUI 툴킷을 사용하여 zenity
대화 상자를 열고 응답으로 입력을 요청한 다음 입력을 받고 나머지 스크립트를 사용하여 설정할 수 있습니다.
예
$ cat brightness.bash
#!/bin/bash
answer="$(zenity --entry --title='Brightness setting' \
--text='Set Brightness To (from 0 to 100):')"
echo $((answer * 8 + 50))>/sys/class/backlight/intel_backlight/brightness
이를 실행하지만 실행하는 대신 마지막 줄만 에코하면 어떤 작업을 수행하는지 확인할 수 있습니다.
$ ./brightness.bash
echo 450 > /sys/class/backlight/intel_backlight/brightness
사용자 인터페이스는 다음과 같습니다.
답변2
또 다른 방법은 터미널 프로그램을 호출하여 명령을 실행하도록 지시하는 것입니다. 대부분의 터미널에는 이를 수행할 수 있는 옵션이 있습니다.
xterm -e PROGRAMNAME
(프로그램 이름을 명령으로 대체)