대화 상자 계측이 설치를 추적할 수 있습니까?

대화 상자 계측이 설치를 추적할 수 있습니까?

현재 다음과 같은 일부 작업이 완료됨에 따라 진행률 표시줄을 늘리기 위해 대화 상자의 --gauge 옵션을 사용하고 있습니다.

( 
  echo 20; echo "XXX"; echo "Task 1"; echo "XXX" ; #Task 1 here
  sleep 2 ; 
  echo 40; echo "XXX"; echo "Task 2"; echo "XXX" ; #Task 2 here
  sleep 2 ; 
  echo 60; echo "XXX"; echo "Task 3"; echo "XXX" ; #Task 3 here
  sleep 2 ;  
  echo 80; echo "XXX"; echo "Task 4"; echo "XXX" ; #Task 4 here
  sleep 2 ; 
  echo 100; echo "XXX"; echo "Task 5"; echo "XXX" ; #Task 5 here
) | dialog --gauge "Performing Tasks" 6 50

또한 내가 원하는 것은 --gauge를 사용하여 설치를 시작한 명령(sudo ./retropie_packages.sh pegasus-fe)의 진행 상황을 표시하는 것입니다.

위와 같은 개인적인 업무가 없기 때문에 이 방법은 통하지 않을 것 같습니다. 나는 PV가 이것을 제안하는 것을 보았지만 그것으로 내 작업을 수행하는 방법을 모릅니다.

어떤 아이디어나 제안이라도 환영합니다.

답변1

아마도 올바른 방법은 아닐 것입니다. 하지만 결국 이렇게 했습니다.

test=0
sudo ./retropie_packages.sh pegasus-fe |
while IFS= read i; do
((++stepscomplete))
percentcomplete=$((stepscomplete*3))
if [ $percentcomplete-lt 100 ]
then
echo $percentcomplete| dialog --hline "  TEXT  " --backtitle "TESTING..." --gauge "Installing Pegasus" 6 50
else
echo 100 | dialog --hline "  TEXT  " --backtitle "TESTING..." --gauge "Installing Pegasus" 6 50
fi
done

관련 정보