Bash Script não está em loop [fechado]

1

Eu tenho um script que deve manter uma função quando um nome de arquivo é alterado - o problema que estou tendo é que, após a primeira execução, o loop while não continua a ser executado. O script não sai parece apenas travar. Alguém tem alguma ideia?

#!/bin/bash
#*******
#10.0.4.****

set -x
#trap read debug

end=432000
state='unknown'

cachereset() {
    rm ~/state/*.txt
    cp /media/state/*.txt ~/state/
    echo "unknown"
}

statecheck() {
    if [ -f  ~/state/meeting.txt ]; then
        pkill google-chrome
        google-chrome https://**** --incognito &   #Load Chromium
        sleep 30                      #Wait for Chromium to load
        xdotool type "****@****.co.uk"
        xdotool key Tab
        xdotool type "PASS!"
        xdotool key Return
        sleep 15
        xdotool key F11
        echo "meeting"
    elif [ -f ~/state/normal.txt ]; then
        pkill google-chrome
        google-chrome https://**** --incognito &   #Load Chromium
        sleep 30                      #Wait for Chromium to load
        xdotool type "***@****.co.uk"
        xdotool key Tab
        xdotool type "PASS!"
        xdotool key Return
        sleep 15
        xdotool key F11
        echo "normal"
    else
        pkill google-chrome
        google-chrome https://**** --incognito &   #Load Chromium
        sleep 30                      #Wait for Chromium to load
        xdotool type "***@*****.co.uk"
        xdotool key Tab
        xdotool type "PASS!"
        xdotool key Return
        sleep 15
        xdotool key F11
        echo "normal"
    fi
}

state=$(cachereset)

while [ $SECONDS -lt $end ]; do
    echo "frank"
    if [ $state == "unknown" ]; then
        state=$(statecheck)
    fi
    if [ $state == "meeting" ]; then
        while [ -f /media/state/meeting.txt ]; do
            sleep 30
        done
        state=$(cachereset)
    fi
    if [ $state == "normal" ]; then
        while [ -f /media/state/normal.txt ]; do
            sleep 30
        done
        state=$(cachereset)
    fi
done

shutdown -r 1
    
por Dan 05.09.2018 / 17:22

0 respostas

Tags