La instrucción IF no funciona correctamente en osascript

1

Estoy trabajando en una secuencia de comandos que debería hacer algo si la aplicación se está ejecutando o no También debería haber un temporizador de verificación (60 segundos) El problema es que "if", que está comprobando que "cuenta" no funciona.

Aquí hay un script:

#!/bin/bash
osascript -e "do shell script \"

COUNT="0"

while true;
do
    if (ps aux | grep Skype | grep -v grep > /dev/null)
    then
        echo "RUNNING" > /Users/someuser/Desktop/RUNNING.txt
    else
        echo "STOPPED" > /Users/someuser/Desktop/STOPPED.txt
    fi

    sleep 1
    COUNT=$((COUNT+1))

    if (("$COUNT" > "60"))
    then
        exit 0
    fi

done

\" with administrator privileges"
    
pregunta Sergio 10.03.2015 - 12:06

1 respuesta

0

De esta manera funciona:

#!/bin/bash
osascript -e do shell script \"

COUNT=0

while true;
do
    if (ps aux | grep Skype | grep -v grep > /dev/null)
    then
        echo 'RUNNING' > /Users/someuser/Desktop/RUNNING.txt
    else
        echo 'STOPPED' > /Users/someuser/Desktop/STOPPED.txt
    fi

    sleep 1
    COUNT=$((COUNT+1))

    if (($COUNT > 60))
    then
        exit 0
    fi

done
\" with administrator privileges
  • No necesitas las comillas antes de do shell script , ya que esta es una frase de AppleScript.
  • Evite las comillas dobles innecesarias para evitar errores.
respondido por el jherran 10.03.2015 - 17:54

Lea otras preguntas en las etiquetas