El día 24 de agosto de 2017, 17:12, Josu Lazkano <josu.lazk...@gmail.com> escribió: > Buenas, > > Estoy intentando crear un script para poder comprobar el estado de mi TV > mediante CEC. > > Lo que quiero es utilizar la salida de un comando para crear un script. El > comando es el siguiente: > > # echo 'pow 0' | cec-client -s -d 1 > > Y si la TV esta en marcha muestra: > > # echo 'pow 0' | cec-client -s -d 1 > opening a connection to the CEC adapter... > power status: on > > Y si esta apagada muestra: > > # echo 'pow 0' | cec-client -s -d 1 > opening a connection to the CEC adapter... > power status: standby > > > Lo que quiero es hacer algo asi: > > if [[ $(echo 'pow 0' | cec-client -s -d 1) == "power status: standby" ]]; > then > echo "La TV está apagada" > else > echo "La TV está en marcha" > fi > > Pero no me funciona la condición del IF, ¿como puedo comprar una salida de > un comando? > > Agradezco vuestra ayuda. > > Un saludo. > > > -- > Josu Lazkano
Hola. La sintaxis parece correcta, podría ser algún carácter de nueva linea en la salida. Prueba a depurarlo con: bash -x script.sh Esto te mostrará las cadenas que se comparan en el if y podrás ver el problema. S2.