현재 다음과 같은 일부 작업이 완료됨에 따라 진행률 표시줄을 늘리기 위해 대화 상자의 --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