Fórum Ubuntu CZ/SK

Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: iX 08 Května 2014, 09:50:58

Název: Pomoc se skriptíčkem.. [Vyřešeno.]
Přispěvatel: iX 08 Května 2014, 09:50:58
Hi! :)
Potřeboval bych poradit, kde je chybka.
Skriptíček má spustit kalkulačku po najetí myší do rohu, a po odjetí ji zase zavřít.
Jenže nesce zavírat, projeví snahu o zavření až po tom, co to zavřu ručně:

Kód: [Vybrat]
#!/bin/bash
A=0
while true
  do
    eval $(xdotool getmouselocation --shell)
    if [ $X -eq 0 ] ; then
      if [ $Y -eq 0 ] ; then
if [ $A -eq 0 ] ; then
  kcalc
  A=1
fi
      fi
    fi
    if [ $X -ne 0 ] || [ $Y -ne 0 ] ; then
      if [ $A -eq 1 ] ; then
pkill -15 kcalc
A=0
      fi
    fi
    sleep 1
  done



Zatím jsem skriptíčkoval jen pod AutoIt-em na widlích, "bašíček" mi zatím připadá dost šílený...
Název: Re:Pomoc se skriptíčkem..
Přispěvatel: Rover623 08 Května 2014, 10:15:03
Odstraň z toho těch -15, to by mělo stačit
Název: Re:Pomoc se skriptíčkem..
Přispěvatel: GdH 08 Května 2014, 10:32:07
Rovere čéče, 15 je SIGTERM, což je defaultní signál, takže to lze opravdu smazat, ale neřeší to problém. Problém je v tom, že se ten kód zastaví na kcalc a pokračuje až po jeho zavření, takže je potřeba za něj přidat &, aby se to spustilo na pozadí.
Název: Re:Pomoc se skriptíčkem..
Přispěvatel: iX 08 Května 2014, 10:38:23
 ;D Voaláá!
& funguje!
Ještě drobnost: občas - ne vždy - to spustí dva kcalcy...

Název: Re:Pomoc se skriptíčkem..
Přispěvatel: iX 08 Května 2014, 10:41:27
ODVOLÁVÁM! :o

Samozřejmě jsem měl skriptíček puščený dvakrát... ;D