명령줄에서 메시지 상자를 만드는 방법은 무엇입니까?

명령줄에서 메시지 상자를 만드는 방법은 무엇입니까?

명령줄에서 메시지 상자(GUI 메시지 상자 또는 터미널 내에 표시되는 메시지 상자)를 어떻게 생성합니까?

예를 들어 라디오 버튼(예/아니요, 확인 등)을 통해 제공되는 입력과 같이 사용자로부터 간단한 입력을 얻을 수 있는 것도 흥미로울 것입니다.

답변1

표준 "메시지 주위 상자"의 경우 다음을 사용하십시오 boxes.

echo 'This is a test' | boxes

boxes다음과 같습니다(첫 번째, 두 번째는 custom 입니다 cowsay).

별표 상자와 텍스트 기호를 들고 있는 ASCII 예술 개 스크린샷


경고 상자를 언급하는 경우 다음을 사용하십시오 notify-send.

notify-send 'title' 'message'

notify-send다음과 같습니다.

"Hello Ashframe..."이라는 팝업 메시지가 나타납니다.


zenity팝업 에도 사용할 수 있습니다 .

zenity --error --text="An error occurred\!" --title="Warning\!"

Zenity는 더욱 그래픽적이며 다음을 사용하여 창을 질문으로 표시하는 등 더 많은 옵션을 제공합니다.

zenity --question --text="Do you wish to continue/?"

또는 진행률 표시줄을 사용하려면 다음을 사용하세요.

find /usr | zenity --progress --pulsate --auto-close --auto-kill --text="Working..."

zenity다음과 같습니다.

버튼이 포함된 오류, 질문, 정보 및 경고 대화 상자


또는 를 dialog명령줄 전용 메시지 상자로 사용하세요.

dialog --checklist "Choose OS:" 15 40 5 \
1 Linux off \
2 Solaris on \
3 'HP UX' off \
4 AIX off

dialog다음과 같습니다.

4가지 옵션이 있는 TUI 대화상자


또 다른 옵션은 다음과 같습니다 whiptail.

whiptail --title "Example Dialog" --msgbox "This is an example of a message box. You must hit OK to continue." 8 78

whiptail다음과 같습니다.

두 개의 텍스트 버튼이 있는 Whiptail 팝업


정말 미쳤다면 다음을 사용하세요 toilet:

toilet -F border -F gay "CRAZY"

toilet다음과 같습니다.

다채로운 텍스트 상자에 '미쳤어'라고 표시됨

답변2

메시지

이것은 GUI 경고의 할아버지입니다:

xmessage -center "Hello, World!"

순수한 복고풍의 장점.

또한 X11 시스템에서 널리 사용 가능해야 한다고 확신합니다.

따라서 스레드는 다음과 같습니다.Linux의 bash 스크립트에 GUI 메시지 상자를 표시하는 방법은 무엇입니까? |스택 오버플로

우분투 18.04에서 테스트되었습니다.

답변3

그리고 @polym의 답변이 정식 메시지를 완전히 넘어서기 때문입니다.

write <username> [<terminal>]- 다른 사용자에게 메시지를 보냅니다. 대화형으로 또는 파이프라인의 일부로echo "message" | write username

쓰다


wall그리고 모든 사용자에게 메시지를 보내려면 추가하세요.

벽

답변4

텍스트를 Python 래퍼로 파이프하려는 경우 다음을 사용할 수 있습니다 terminaltables.

pip3 install colorclass
pip3 install terminaltables

그럼 안으로GitHub 저장소, 예제 중 하나를 사용하여 Python 래퍼를 작성할 수 있습니다.

여기에 이미지 설명을 입력하세요.

관련 정보