나는 보여주고 싶다whiptail
로그인 화면에서 메시지를 실행했지만 monit
운이 없었습니다.
나는 이것이 대화형/비대화형 쉘과 관련이 있을 수 있다는 것을 알고 있습니다. 이는 스크립트에 의해 트리거됩니다 monit
.
#!/bin/bash
/usr/bin/whiptail --infobox 'Hello World.' 7 25 >/dev/tty1
팁이 있나요? 아니면 휩테일 사용을 피해야 하나요?
답변1
방금 다음을 시도했고 내 데스크톱의 출력을 /dev/tty2
사용 하도록 보낼 수 있었 whiptail
으므로 지금 하고 있는 작업이 제대로 작동하는 것 같습니다. 내가 알아차린 몇 가지.
1.권한
에 무엇이든 보내려면 루트여야 합니다 . tty 장치에 데이터를 보낼 권한이 없는 사용자로 이 작업을 실행하고 있다고 /dev/tty2
가정합니다 .monit
2.--infobox
현재 쉘에서는 스위치 --infobox
가 작동하지 않는 것 같지만 을(를) 보낼 수 --infobox
있습니다 /dev/tty2
. YMMV. --msgbox
두 경우 모두에서 작동합니다.
답변2
"비결"은 기본적으로 대화 상자와 같은 휩테일(whiptail)이 메시지를 다음 위치에 기록한다는 것입니다.표준 에러, 일반 프로그램이 사용하기 때문에표준 출력화면 업데이트를 위해.
2
마커 옆에 를 배치하여 표준 오류를 리디렉션할 수 있습니다 >
.
#!/bin/bash
/usr/bin/whiptail --infobox 'Hello World.' 7 25 2>/dev/tty1
추가 자료: