Ja się podkleję bo mam pytanie do tego skryptu.
Wszystkie warunki zostały wrzucone w nieskończoną pętlę która cały czas działa i cały czas sprawdza prawdziwość tych warunków i cały czas zapisuje do plików 0 lub gdy zmieni się pozycję przycisku cały czas pętla będzie dopisywała 1. Dobrze rozumiem?
Ja natomiast chciałbym żeby instrukcja wykonywała się raz, a nie nieskończenie wiele razy dopóki nie zmieni się pozycja przycisku. Czyli dopiero wtedy gdy zmieniam pozycję przycisku dopiero wtedy zachodzi sprawdzenie wszystkich warunków i po takim sprawdzeniu skrypt się zakończy lub po prostu samo sprawdzanie się zakończy.
Żeby jeszcze bardziej wyjaśnić o co mi chodzi dodam że chciałbym ten przycisk wykorzystać do montowania dysku. Gdy włączę go na off, skrypt wyłącza transmission, odmontowuje /dev/sdb1 (punkt i parametry są już w fstabie) oraz włącza tp-link:blue:qss. Wtedy bym go sobie na luzie odpinał, zrzucał ściągnięte torrenty a później podpinał i przełączał przycisk wifi na on. I wtedy znów odpalają się warunki, /dev/sdb1 jest montowany, transmission odpalone a na końcu dioda tp-link:blue:qss jest wyłączana (echo "0" > /sys/devices/platform/leds-gpio/leds/tp-link:blue:qss/brightness).
Skrypcik taki jest bardzo łatwo zrobić ale jak zrobić to żeby wykonywał się jednorazowo?Chyba najprościej można by było wrzucić w pętlę nieskończoną i dać w niej warunek nie na stan ale zmianę stanu. Czyli akcje byłyby dopiero wtedy uruchamiane gdyby różnica między zmienną sprawdzającą z poprzedniego stanu i aktualnego byłaby różna od 0 (przy założeniu że stany opiszemy w liczbach np 1 i 2.
Ale może da się to bardziej klarownie zrobić?