명령줄에서 메시지 상자(GUI 메시지 상자 또는 터미널 내에 표시되는 메시지 상자)를 어떻게 생성합니까?
예를 들어 라디오 버튼(예/아니요, 확인 등)을 통해 제공되는 입력과 같이 사용자로부터 간단한 입력을 얻을 수 있는 것도 흥미로울 것입니다.
답변1
표준 "메시지 주위 상자"의 경우 다음을 사용하십시오 boxes
.
echo 'This is a test' | boxes
boxes
다음과 같습니다(첫 번째, 두 번째는 custom 입니다 cowsay
).
경고 상자를 언급하는 경우 다음을 사용하십시오 notify-send
.
notify-send 'title' 'message'
notify-send
다음과 같습니다.
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
다음과 같습니다.
또 다른 옵션은 다음과 같습니다 whiptail
.
whiptail --title "Example Dialog" --msgbox "This is an example of a message box. You must hit OK to continue." 8 78
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 래퍼를 작성할 수 있습니다.