1 votos

La sentencia IF no funciona correctamente en osascript

Estoy trabajando en script que debe hacer algo si la aplicación se está ejecutando o no También debe haber un temporizador de comprobación(60 segundos) El problema es que "si" declaración que es la comprobación de "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"

0voto

jherran Puntos 6511

Este camino 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 se trata de una frase de applescript.
  • Evite las comillas dobles innecesarias para evitar errores.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X