Portál AbcLinuxu, 5. května 2025 14:55

Dotaz: Problém s trapem a ESC

23.9.2013 23:30 Orlando
Problém s trapem a ESC
Přečteno: 189×
Odpovědět | Admin
Zdravím, proč se nespustí funkce myesc() když stisknu ESC na klávesnici. Poradí někdo?
#!/bin/bash
function myesc(){
echo "Press to key ESC!";
}
trap myesc ESC
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

23.9.2013 23:50 rastos | skóre: 63 | blog: rastos
Rozbalit Rozbalit vše Re: Problém s trapem a ESC
Odpovědět | | Sbalit | Link | Blokovat | Admin
a) trap chytá signály, nie stlačenia klávesy

b) pokiaľ nevypneš buffrovanie terminálu, tak program dostane vstup až po stlačení klávesy Enter

c) program vykoná posledný riadok a skončí. Nečaká na stlačenie klávesy.
24.9.2013 00:01 Orlando
Rozbalit Rozbalit vše Re: Problém s trapem a ESC
Aha, a nějaký nápad jak toho docílit něčím jiným než trapem? Děkuji
24.9.2013 01:46 mkmm
Rozbalit Rozbalit vše Re: Problém s trapem a ESC
Nejlepsi je vyhnout se Esc, v terminalu se spousta programu ukoncuje klavesou q. Nicmene zde je priklad zachyceni Esc:
#!/bin/bash
echo "Stiskni esc"
read -s -n1 key
case $key in
    $'\e')  echo "Stisknuto esc"
            ;;
    *)      echo "Stisknuto neco jineho"
            ;;
esac

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.