#! /bin/sh
DIALOG=${DIALOG=dialog}
# ΠΆΠ΄Π΅ΠΌ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΠΊΡΠ½Π΄
left=10
unit="ΡΠ΅ΠΊΡΠ½Π΄"
while test $left != 0
do
$DIALOG --sleep 1 \
--title "INFO BOX" \
--infobox "ΠΡΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ Π±ΠΎΠΊΡ. ΠΠ½ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ \
msgbox ΡΠ΅ΠΌ, ΡΡΠΎ Π½Π΅ ΠΆΠ΄ΡΡ, ΠΏΠΎΠΊΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΠΆΠΌΠ΅Ρ Enter, \
Π° ΠΏΡΠ΅ΠΊΡΠ°ΡΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΡ ΠΏΠΎ ΠΈΡΡΠ΅ΡΠ΅Π½ΠΈΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ \
(Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ - 10 ΡΠ΅ΠΊΡΠ½Π΄). \
Π£ Π²Π°Ρ $left $unit ΡΡΠΎΠ±Ρ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΡΡΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅..." 10 52
left=`expr $left β 1`
test $left = 1 && unit="second"
done
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ --sleep 1 ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° dialog Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠΎΠ²ΡΠ²Π°ΡΡ ΠΎΠΊΠ½ΠΎ ΡΠ΅ΡΠ΅Π· ΠΎΠ΄Π½Ρ ΡΠ΅ΠΊΡΠ½Π΄Ρ. ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ --title Π·Π°Π΄Π°Π΅Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π²ΠΈΠ΄ΠΆΠΈΡΠ°, --infobox β ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΠΈΠΏ Π²ΠΈΠ΄ΠΆΠΈΡΠ°, ΠΏΠΎΡΠ»Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π²ΠΈΠ΄ΠΆΠΈΡΠ° ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, Π° ΠΏΠΎΡΠΎΠΌ β ΡΠ°Π·ΠΌΠ΅Ρ Π²ΠΈΠ΄ΠΆΠΈΡΠ°.
Π ΡΠΈΠΊΠ»Π΅ while ΠΌΡ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΊΡΠ½Π΄ ΠΎΡΡΠ°Π»ΠΎΡΡ, ΡΠΌΠ΅Π½ΡΡΠ°Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ left.
25.3. ΠΠΈΠ΄ΠΆΠΈΡ Yes-no
Π§Π°ΡΡΠΎ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΡΠ΅ ΠΎΠΊΠ½Π°, ΡΠΏΡΠ°ΡΠΈΠ²Π°ΡΡΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΡΠΎΠ³Π»Π°ΡΠ΅Π½ Π»ΠΈ ΠΎΠ½ Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Β«ΠΡ ΡΠΎΡΠ½ΠΎ Ρ ΠΎΡΠΈΡΠ΅ Π²ΡΠΉΡΠΈ?Β» ΠΈΠ»ΠΈ Β«Π£Π΄Π°Π»ΠΈΡΡ ΡΡΠΎΡ ΡΠ°ΠΉΠ»?Β». ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΆΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΡΡΡ Π΄Π²Π° Π²Π°ΡΠΈΠ°Π½ΡΠ° ΠΎΡΠ²Π΅ΡΠ° β ΠΠ° ΠΈΠ»ΠΈ ΠΠ΅Ρ. ΠΠ»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ°ΠΊΠΎΠ³ΠΎ Π΄ΠΈΠ°Π»ΠΎΠ³Π° ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π²ΠΈΠ΄ΠΆΠΈΡ yes-no.
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ Π»ΠΈΡΡΠΈΠ½Π³ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΡΠΈΠΌ Π²ΠΈΠ΄ΠΆΠΈΡΠΎΠΌ:
ΠΠΈΡΡΠΈΠ½Π³ 25.3. Π Π°Π±ΠΎΡΠ° Ρ Π²ΠΈΠ΄ΠΆΠΈΡΠΎΠΌ yes-no
#!/bin/sh
DIALOG=${DIALOG=dialog}
$DIALOG --title "YES/NO BOX" --clear \
--yesno "ΠΡΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°ΡΡ /dev/hda1?" 5 41
case $? in
0)
echo "ΠΠ°.";;
1)
echo "ΠΠ΅Ρ.";;
255)
echo "ESC.";;
esac
Π ΠΈΡ. 25.2. ΠΠΈΠ΄ΠΆΠΈΡ yes-no
ΠΠΈΠ΄ΠΆΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅: Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π²ΠΈΠ΄ΠΆΠΈΡΠ° (yesno), ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΡΠ°Π·ΠΌΠ΅ΡΡ Π²ΠΈΠ΄ΠΆΠΈΡΠ°. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° dialog Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ:
β¦ 0, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΠΆΠ°Π» ΠΊΠ½ΠΎΠΏΠΊΡ Yes;
β¦ 1, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΠΆΠ°Π» ΠΊΠ½ΠΎΠΏΠΊΡ No;
β¦ 255, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΠΆΠ°Π» ΠΊΠ»Π°Π²ΠΈΡΡ Esc.
25.4. ΠΠΊΠ½ΠΎ Π²Π²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠ°
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΌ ΠΏΠΎ ΡΠ°ΡΡΠΎΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΡ Π²ΠΈΠ΄ΠΆΠΈΡΠΎΠ² ΠΈ Π²ΠΈΠ΄ΠΆΠΈΡΠ° yes-no ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΠΈΠ΄ΠΆΠΈΡ Π²Π²ΠΎΠ΄Π° ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ β Inputbox. ΠΡΠΈΠ½ΡΠΈΠΏ ΡΠ°Π±ΠΎΡΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π²ΠΈΠ΄ΠΆΠΈΡΠ° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ:
β¦ ΠΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ ΠΈΠΌΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°, Π² ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΠΈΡΠ°Π½ΠΎ Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅.
β¦ ΠΡΠ·ΡΠ²Π°Π΅ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ dialog Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ --inputbox.
β¦ ΠΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅ΠΌ Π²ΡΠ²ΠΎΠ΄ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΡΠ°ΠΉΠ» (ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π²ΡΠ²Π΅Π΄Π΅Ρ Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅).
β¦ ΠΡΠ²ΠΎΠ΄ΠΈΠΌ ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΠΌ ΠΊΠ°ΠΊΠΈΠΌ-Π»ΠΈΠ±ΠΎ Π΄ΡΡΠ³ΠΈΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°.
ΠΠΈΡΡΠΈΠ½Π³ 25.4. ΠΠΈΠ΄ΠΆΠΈΡ Inputbox
#!/bin/sh
DIALOG=${DIALOG=dialog}
tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/test$$
trap "rm -f $tempfile" 0 1 2 5 15
$DIALOG --title "INPUT BOX" --clear \
--inputbox "ΠΠ°Π½Π½ΡΠΉ Π²ΠΈΠ΄ΠΆΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π²Π²ΠΎΠ΄Π° \
ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ \n\n \
ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΡΠ²ΠΎΠ΅ ΠΈΠΌΡ:" 16 51 2 > $tempfile
retval=$?
case $retval in
0)
echo "ΠΡ Π²Π²Π΅Π»ΠΈ `cat $tempfile`";;
1)
echo "ΠΠ°ΠΆΠ°ΡΠ° Cancel";;
255)
if test -s $tempfile ; then
cat $tempfile
else
echo "ΠΠ°ΠΆΠ°ΡΠ° ESC."
fi
;;
esac
Π ΠΈΡ. 25.3. ΠΠΈΠ΄ΠΆΠΈΡ InputBox
ΠΠ½Π°ΡΠ΅Π½ΠΈΡ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ dialog:
β¦ 0, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΡΠΎ-ΡΠΎ Π²Π²Π΅Π» ΠΈ Π½Π°ΠΆΠ°Π» Enter ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ Π½Π°ΠΆΠ°Π» <ΠΠ²ΠΎΠ΄>, Π½Π΅ Π²Π²Π΅Π΄Ρ Π½ΠΈΡΠ΅Π³ΠΎ (ΡΠΎΠ³Π΄Π° Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΡΠ°ΠΉΠ» Π±ΡΠ΄Π΅Ρ ΠΏΡΡΡ);
β¦ 1, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΠΆΠ°Π» Cancel;
β¦ 255, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΠΆΠ°Π» Esc.
25.5. ΠΠ°Π²ΠΈΡΠΈΠΌΡΠ΅ ΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»ΠΈ
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° dialog ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΡΠ²ΠΎΠΈΡ ΡΡΠ΅Π½Π°ΡΠΈΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΡΠ΅ ΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»ΠΈ. ΠΠ°Π²ΠΈΡΠΈΠΌΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΡΡ Π²ΠΈΠ΄ΠΆΠΈΡΠΎΠΌ radiolist, Π° Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠ΅ β checklist.
ΠΠΈΡΡΠΈΠ½Π³ 25.5. ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»ΠΈ
#!/bin/sh
DIALOG=${DIALOG=dialog}
tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/test$$
trap "rm -f $tempfile" 0 1 2 5 15
$DIALOG --backtitle "ΠΡΠΈΠΌΠ΅Ρ" \
--title "ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»ΠΈ" \
--checklist "ΠΠ°Π½Π½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅Ρ ΡΠ°Π±ΠΎΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΡ \n\
ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Π΅ΠΉ, ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΠΌΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°ΠΊΠ΅ΡΠ° Dialog \n\
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΠ ΠΠΠΠ Π΄Π»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Π΅ΠΉ.\
\n\n\
ΠΠ°ΠΊΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ Π²Ρ ΡΠΈΡΠ°Π»ΠΈ?" 20 61 5 \
"ΠΠΎΡΡΠΈ ΠΊΠ°ΠΊ Π»ΡΠ΄ΠΈ" "Π‘Π°ΠΉΠΌΠ°ΠΊ" off \
"Π€Π°ΡΡΡ" "ΠΠ΅ΡΠ΅" ON \
"ΠΠ°ΡΡΠ΅Ρ ΠΈ ΠΠ°ΡΠ³Π°ΡΠΈΡΠ°" "ΠΡΠ»Π³Π°ΠΊΠΎΠ²" off \
"ΠΠΈΡ ΡΠ΅Π½Π΅ΠΉ" "Π‘Π°ΠΉΠΌΠ°ΠΊ" off \
"ΠΠ΅ΠΌΠΎΠ½" "ΠΠ΅ΡΠΌΠΎΠ½ΡΠΎΠ²" on 2> $tempfile
retval=$?
choice=`cat $tempfile`
case $retval in
0)
echo "ΠΡ Π²ΡΠ±ΡΠ°Π»ΠΈ '$choice'";;
1)
echo "ΠΠ°ΠΆΠ°ΡΠ° Cancel";;
255)
echo "ΠΠ°ΠΆΠ°ΡΠ° ESC";;
esac
Π ΠΈΡ. 25.4. ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»ΠΈ
ΠΡΠ±ΡΠ°Π½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΡΠ°ΠΉΠ», ΠΊΠΎΡΠΎΡΡΠΉ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°ΡΡ. Π‘Π΅ΠΉΡΠ°Ρ ΠΌΡ ΠΏΡΠΎΡΡΠΎ Π²ΡΠ²Π΅Π΄Π΅ΠΌ Π΅Π³ΠΎ Π½Π° ΠΊΠΎΠ½ΡΠΎΠ»Ρ. ΠΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠΏΠΈΡΠΊΠ° checklist ΠΌΠΎΠΆΠ΅Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ β On ΠΈΠ»ΠΈ Off. ΠΡΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π΅ ΡΡΠ²ΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½Ρ ΠΊ ΡΠ΅Π³ΠΈΡΡΡΡ. ΠΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΡΠ°ΠΉΠ» Π²ΡΠ²ΠΎΠ΄ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»ΠΈ.
Π Π°Π±ΠΎΡΠ° Ρ Π²ΠΈΠ΄ΠΆΠΈΡΠΎΠΌ radiolist ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² Π²ΠΈΠ΄ΠΆΠΈΡΠΎΠΌ checklist, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π°ΠΊΡΠΈΠ²Π½ΡΠΌ Π»ΠΈΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΡΠ°ΠΉΠ» Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΠΈΡΠ°Π½ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎΡ ΡΠ»Π΅ΠΌΠ΅Π½Ρ.
ΠΠΈΡΡΠΈΠ½Π³ 25.6. ΠΠ°Π²ΠΈΡΠΈΠΌΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»ΠΈ
#!/bin/sh
DIALOG=${DIALOG=dialog}
tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/test$$
trap 'rm -f $tempfile" 0 1 2 5 15
$DIALOG --backtitle "ΠΡΠΈΠΌΠ΅Ρ" \
--title "RADIOLIST BOX" --clear \
--radiolist "ΠΡΠΎ ΡΠΏΠΈΡΠΎΠΊ Π·Π°Π²ΠΈΡΠΈΠΌΡΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Π΅ΠΉ \n\
ΠΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠ±ΡΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Π²Π°ΡΠΈΠ°Π½Ρ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° \n\
ΠΠ°ΠΊΡΡ ΠΈΠ· ΡΡΠΈΡ ΠΊΠ½ΠΈΠ³ Π²Ρ ΡΠΈΡΠ°Π»ΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ?" 2 0 81 5 \
"ΠΠΎΡΡΠΈ ΠΊΠ°ΠΊ Π»ΡΠ΄ΠΈ" "Π‘Π°ΠΉΠΌΠ°ΠΊ" off \
"Π€Π°ΡΡΡ" "ΠΠ΅ΡΠ΅" off \
"ΠΠ°ΡΡΠ΅Ρ ΠΈ ΠΠ°ΡΠ³Π°ΡΠΈΡΠ°" "ΠΡΠ»Π³Π°ΠΊΠΎΠ²" ON \
"ΠΠΈΡ ΡΠ΅Π½Π΅ΠΉ" "Π‘Π°ΠΉΠΌΠ°ΠΊ" off \
"ΠΠ΅ΠΌΠΎΠ½" "ΠΠ΅ΡΠΌΠΎΠ½ΡΠΎΠ²" on 2> $tempfile
retval=$?
choice=`cat $tempfile`
case $retval in
0)
echo "ΠΡ Π²ΡΠ±ΡΠ°Π»ΠΈ '$choice'";;
1)
echo "ΠΠ°ΠΆΠ°ΡΠ° Cancel";;
255)
echo "ΠΠ°ΠΆΠ°ΡΠ° ESC";;
esac
25.6. ΠΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΠΌΠ΅Π½Ρ
ΠΠΈΠ΄ΠΆΠΈΡ MenuBox ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠΆ Π½Π° radiolist β ΠΎΠ½ΠΈ ΠΏΡΡΠΌΠΎ-ΡΠ°ΠΊΠΈ Π±ΡΠ°ΡΡΡ-Π±Π»ΠΈΠ·Π½Π΅ΡΡ, ΡΠΎΠ»ΡΠΊΠΎ Ρ menubox Π½Π΅Ρ ΡΠ»Π΅Π²Π° ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΠ΅Π»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ/Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΎ. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ MenuBox Π½ΡΠΆΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ radiolist, Π½ΠΎ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°Ρ on ΠΈΠ»ΠΈ off Π΄Π»Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ΅Π½Ρ.
ΠΠΈΡΡΠΈΠ½Π³ 25.7. ΠΠ΅Π½Ρ
#!/bin/sh
DIALOG=${DIALOG=dialog}
tempfile=`tempfile 2>/dev/null` ||( tempfile=/tmp/test$$
trap "rm -f $tempfile" 0 1 2 5 15
$DIALOG --clear --title "MENU BOX" \
--menu "ΠΡΠΎΡ Π²ΠΈΠ΄ΠΆΠΈΡ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΌΠ΅Π½Ρ \n\
MENU BOX ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΡΠ±ΡΠ°ΡΡ ΠΎΠ΄ΠΈΠ½ Π²Π°ΡΠΈΠ°Π½Ρ\
ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° \n\
ΠΠ°Π½Π½ΡΠΉ Π²ΠΈΠ΄ΠΆΠΈΡ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΠΊΡΡΡΠΈΠ²Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ \n\
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡΠ΅Π»ΠΊΠΈ ΠΠΠΠ Π₯/ΠΠΠΠ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΊΠ»Π°Π²ΠΈΡΠΈ \n\
1-9 Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠ°.\n\
ΠΡΠ±Π΅ΡΠΈΡΠ΅ Π²Π°ΡΡ ΠΠ‘:" 2 0 71 4 \
"Linux" "Π ΡΡΠΎ, ΡΠ°Π·Π²Π΅ Π΅ΡΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ" \
"FreeBSD" "ΠΡΠΎ Π»ΡΡΡΠ°Ρ ΠΠ‘" \
"Windows" "ΠΡ ΠΊΡΠΎΠΌΠ΅ Windows Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π²ΠΈΠ΄Π΅Π»ΠΈ..." \
"MSDOS" "ΠΠ° ΠΌΠΎΠ΅ΠΉ Π΄Π²ΠΎΠΉΠΊΠ΅ Π½ΠΈΡΠ΅Π³ΠΎ Π΄ΡΡΠ³ΠΎΠ³ΠΎ Π½Π΅ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ :(" 2> $tempfile
retval=$?
choice=`cat $tempfile`
case $retval in
0)
echo "ΠΠ°Ρ Π²ΡΠ±ΠΎΡ '$choice'";;
1)
echo "ΠΠ°ΠΆΠ°ΡΠ° Cancel";;
255)
echo "ΠΠ°ΠΆΠ°ΡΠ° Esc.";;
esac
Π ΠΈΡ. 25.5. ΠΠΈΠ΄ΠΆΠΈΡ menubox
25.7. ΠΠ°Π»Π΅Π½Π΄Π°ΡΡ
ΠΡΠΎΡ Π²ΠΈΠ΄ΠΆΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ΄ΠΎΠ±Π½ΠΎ Π²Π²Π΅ΡΡΠΈ Π΄Π°ΡΡ. Π Π°Π±ΠΎΡΠ°ΡΡ Ρ Π½ΠΈΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ°ΠΊ: Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠ»Π°Π²ΠΈΡΠΈ Tab Π²ΡΠ±ΠΈΡΠ°Π΅ΡΠ΅ Π½ΡΠΆΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ: ΠΊΠ½ΠΎΠΏΠΊΠ° OK, Cancel, ΠΏΠΎΠ»Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΌΠ΅ΡΡΡΠ°, ΠΏΠΎΠ»Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π³ΠΎΠ΄Π°, ΠΏΠΎΠ»Π΅ Π²ΡΠ±ΠΎΡΠ° ΡΠΈΡΠ»Π°; Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΡΠ΅Π»ΠΎΠΊ Π²Π²Π΅ΡΡ /Π²Π½ΠΈΠ· ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΠ΅ Π½ΡΠΆΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΌΠ΅ΡΡΡΠ°, Π³ΠΎΠ΄Π°, ΡΠΈΡΠ»Π° ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΡΠ΅ <ΠΠ²ΠΎΠ΄>. ΠΡΠ±ΡΠ°Π½Π½Π°Ρ Π²Π°ΠΌΠΈ Π΄Π°ΡΠ° Π±ΡΠ΄Π΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½Π° Π½Π° ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ.
ΠΠΈΡΡΠΈΠ½Π³ 25.8. ΠΠ°Π»Π΅Π½Π΄Π°ΡΡ
#!/bin/sh
: ${DIALOG=dialog}
USERDATE=`$DIALOG --stdout --title "CALENDAR" βcalendar\
"ΠΡΠ±Π΅ΡΠΈΡΠ΅ Π΄Π°ΡΡ..." \
0 0 1 1 2004`
case $? in
0)
echo "ΠΡ Π²ΡΠ±ΡΠ°Π»ΠΈ Π΄Π°ΡΡ: $USERDATE.";;
1)
echo "ΠΠ°ΠΆΠ°ΡΠ° Cancel.";;
255)