내 코드를 참조하세요 – (bash 스크립트)
화면에 두 개의 대화 상자를 동시에 표시하고 싶습니다.
대화 상자가 표시됩니다:
tail –f from - /var/log/process1.log ,
두 번째 대화 상자는 다음과 같이 표시됩니다.
파일의 tail –f - /var/log/process2.log
하지만 슬픈 사실은 두 개가 아닌 하나의 대화 상자만 표시할 수 있다는 것입니다. 왜냐하면 첫 번째 대화 상자를 실행할 때 두 번째 대화 상자는 첫 번째 대화 상자가 종료될 때만 발생하기 때문입니다.
그래서 두 번째 대화 상자에서 프로세스를 만듭니다.(…..) & , 두 개의 대화 상자를 표시하려면
하지만…. 두 번째 대화 상자는 프로세스 ID를 생성하지만 두 번째 대화 상자 GUI를 생성하지 않습니다. (대화 상자를 생성하기 위해 프로세스를 사용할 때 프로세스가 대화 상자를 stdout으로 보내지 않는 것 같습니다.)
그렇다면 프로세스를 사용하여 두 번째 대화 상자를 실행하면서 대화 상자 GUI를 화면에 보내는 방법은 무엇입니까? , 또는 화면에 두 개의 대화 상자를 표시하는 다른 솔루션
내 코드
#!/bin/bash
# this dialog will locate the tail box on the top of the screen
dialog --begin 15 10 --tailbox /var/log/proccess1.log 13 125
# this dialog will locate the tail box down in the screen
( dialog --begin 37 10 --tailbox /var/log/proccess2.log 13 125 ) &
답변1
이 시도:
dialog --keep-window --begin 0 0 --tailboxbg /var/log/process1.log 20 110 \
--and-widget --keep-window --begin 0 120 --tailboxbg /var/log/process2.log 20 110 \
--and-widget --begin 21 100 --msgbox "Press Enter to exit." 5 25
필요에 맞게 숫자를 조정하십시오. 살아남 msgbox
으려면 그것을 사용해야 해요 dialog
.
답변2
이 문제를 다루는 것은 이번이 처음입니다 dialog
. 매뉴얼 페이지를 읽으면서 이것이 당신이 추구하는 것이라고 생각합니다.
#!/bin/bash
# this dialog will locate the tail box on the top of the screen
dialog --keep-window --begin 15 10 --tailboxbg /var/log/syslog 13 125 \
--and-widget --begin 37 10 --tailbox /var/log/dmesg 13 125
답변3
screen
회의에서 이거 하는 건 어때요? 각 부츠가 내부에 있는 별도의 창 2개...
나는 고려 중입니다 (이것은 .screenrc
구성 파일입니다):
startup_message off
screen dialog --begin 10 10 --tailbox /var/log/proccess1.log 13 125
split
focus down
screen dialog --begin 10 10 --tailbox /var/log/proccess2.log 13 125
실행하려면 다음을 사용하십시오.screen -c screenrcfile
HTH, 건배