일반적인 X11 프로그램이 있습니까?


1

일반적인 터미널 프로그램으로 생각 echo하거나 사용할 수 있습니다 cat. 맹목적으로 전화 할 수 있습니다 :

echo "hello world"

예를 들어 bash에서 작동합니다. 당신은 출력을 볼 수 있습니다.

나는 X11에 대해 이와 같은 것을 찾고 있습니다. (더 이상 맹목적으로) 사용자가 X11에서 일하고 있다고 가정하면 시각적 출력을 볼 것입니다 (그래서 X11을 감지하는 방법을 묻지 않고 작동합니다. 이것은 가정입니다) .

bash에서 X11 하위 시스템을 호출 할 수 있다면 X11 명령 (닫기 버튼으로 베어 창 만들기와 같은) 일 수도 있습니다. 나는이 같은 문제에 대해 이야기하고 있지 않다, 유의하시기 바랍니다 https://stackoverflow.com/questions/7035/how-to-show-a-message-box-from-a-bash-script-in-linux 때문에 도구 "zenity처럼 "(의문의 여지없이 유용합니다)는 기본적으로 설치되지 않습니다.

중요 사항 : 전원이 꺼 지거나 사용자가 명시 적으로 닫을 때까지 지속되는 무언가가 필요합니다.


4
xeyes, xterm, xclock, ...
Jeff Schaller

@JeffSchaller, 왜 그렇게 부끄러워 :-), 당신은 완벽한 대답을주었습니다. 그대로 게시 해 주시면 기꺼이 받아 드리겠습니다.
greenoldman

1
이는 대상 배포판과 기본적으로 설치되는 내용에 따라 다릅니다. X가 설치되어 있지만 xterm, xeyes 또는 xclock이 없습니다. X를 설치한다고해서 반드시 설치해야하는 것은 아닙니다.
muru

@muru, 나쁘다. 그 중 하나를 제거 했습니까? 나는 특히 xterm에 대해 생각하고 있습니다.
greenoldman

1
Fedora와 마찬가지로 기본 설정에는 xterm, xeyes또는이 포함되지 않습니다 xclock.
Stephen Kitt

답변:


8

실제로 그러한 명령은 없습니다. (이유 내에서)있을 수도 없습니다. 예를 들어 사용자는 전체 화면 앱을 사용하고있을 수 있으며 합성 창 관리자는 전체 화면 환경을 방해 할 수 있기 때문에 그 위에 어떤 것도 넣지 않습니다.

물론 맹목적으로 입력해도 작동하지 않습니다. 터미널에 초점이 맞지 않을 수 있습니다. 터미널 대신 스택 교환 응답에 완전히 멋진 명령을 입력하면 물론 실행되지 않을 수 있습니다.

당신은 당신이 그것을 실행할 수있는 명령이됩니다하려면 아마 : 뭔가를 표시하는 Xorg와 함께 제공되는 기본 사람은 좋은 생각이다 xlogo, xev, xfd, xmessage, xeyes여러 다른 사람의 사이에서. 이 중 xmessage종류의 zenity와 비슷하지만 훨씬 더 원시적 (그러나 아마 더 가능성이 설치 될)와 xeyes확실히 사용자의 관심을 얻을 줄래. 쉘 스크립트에서 "설치되지 않음"(종료 코드 127)을 감지하고 목록에서 다른 것을 시도 할 수 있습니다.

유용한 정보를 사용자 에게 전달 하고 사용자가 최신 데스크탑 환경을 사용하는 경우 가장 좋은 방법은 notify-send(libnotify의 일부) 와 함께 데스크탑 알림을 보내는 것 입니다. 사용자가 닫을 때까지 지속되어야합니다.


맹목적으로 실행하여 레코드에 대한 유용한 답변에 감사드립니다. 나는 주어진 프로그램이 설치되어 있는지 또는 설치하는지 사전에 확인하지 않고 명령을 실행할 수 있음을 의미했습니다. 또한 전체 화면 등에 대한 부분은 관련이 없습니다. 터미널이 있고 스크립트가 실행되고 있다는 것을 알고 있기 때문에 유일한 질문은 시스템에있는 프로그램 (XWindow의 경우)에 관한 것입니다. 답변과 좋은 선택 목록에 다시 한 번 감사드립니다.
greenoldman

@greenoldman 터미널이 있다는 것을 알고 있으면 해당 명령을 취소하고 다른 터미널을 열 수 있습니다.
StrongBad
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.